
urxvtで新しいタブが開かれるたびに、cwd(現在の作業ディレクトリ)はbashrcに設定されているデフォルトのディレクトリです。
現在のタブのcwdで新しいタブを開く方法は?
答え1
まず、cd
ディレクトリを変更するたびに、現在のディレクトリを保存する関数で組み込み関数をオーバーライドできます。
cd() {
command cd $@
pwd > ~/.curdir
}
その後、新しいシェルを開くたびに、最後に既知のディレクトリに変更できます。
command cd `cat ~/.curdir`
両方のスニペットを両方に入れると~/.bashrc
、新しく開くすべてのシェルにオーバーライドされたcd
コマンドが適用され、最後に既知のディレクトリに変更しようとします。
#!/bin/bash
cd() {
command cd $@
pwd > ~/.curdir
}
command cd `cat ~/.curdir`
元のコマンドにアクセスするために名前付き関数ではなくcommand
組み込み関数を使用していることに注意してください。また、これは意図しない副作用がある可能性があることに注意してください。特に、同時に複数のシェルが開いている場合(タブを使用する場合のポイント)、さらにそうです。cd
cd()
urxvt