screen
コマンドにシンボリックリンクを渡すchdir
ときにシンボリックリンクを逆参照しないように指示する方法はありますか?
私のコマンドには.screenrc
次のものがあります。
chdir /data/project1
screen -t "project1"
chdir /data/project2
screen -t "project2"
screen
起動時に定期的に使用する複数の共通ディレクトリにいくつかの端末をプリロードするというアイデアです。
残念ながら、そこにあるすべては/data
私のシステムにシンボリックリンクを持っているので、screen
上記のコマンドを使ってロードすると、端末は目的のフォルダに入るために端末にを入力する必要があります。/mnt/remote/server1/long/path/to/project1
/data/project1
cd /data/project1
私が使用するパスは長く変更される可能性があるため、/data
ファイルを別の場所に再配置する場合は、何も変更する必要がないようにショートカットを使用する習慣を入れることをお勧めします。
ターゲットがシンボリックリンクの場合、シンボリックリンクを逆参照せずにそのディレクトリに変更することをscreen
知る方法はありますか?chdir
答え1
私はあなたがそこで何が起こっているのか誤解したと思います。
あなたがいるとき
/mnt/remote/server1/long/path/to/project1
シェルとタイプで
cd /data/project1
その後、ディレクトリを変更しません。シェルに表示される内容を変更するだけです。シェルは論理ディレクトリ階層と物理ディレクトリ階層を区別します。screen
(その他ほとんどすべて)いいえ。
最も簡単な解決策は、おそらくいくつかのコードを追加することです.bashrc
(を使用すると仮定bash
)。
test "$PWD" = '/mnt/remote/server1/long/path/to/project1' && cd /data/project1