3

同一のサブディレクトリとファイル構造を持つ複数のディレクトリ (例: tom richard harry) があります。あるディレクトリ内のファイルで作業している場合、別のディレクトリ内の同等のパスに移動するための高速または簡単な方法はありますか?

pwd=/mystuff/myproject/tom/hobbies/sports/highschool

cd /mystuff/myproject/richard/hobbies/sports/highschool

cd pwd のようなショートカットを期待していましたが、1 つのコマンドで tom > richard を変更しました。

4

6 に答える 6

11

以下が機能するはずです。

cd ${PWD/tom/richard}
于 2013-06-13T16:03:09.197 に答える
1

現在のディレクトリがわかっている場合($dirname変数に保存されているとします):

function dirswitch() {
    newdir="$1"    
    cd $(pwd | sed -e "s#/$dirname/#/$newdir/#")
}

これにより、bash でジョブが処理されます。したがって、あなたが入っていてdirname=tom、に切り替えたい場合harry:

dirswitch harry

...トリックを行います。

于 2013-06-13T16:04:18.340 に答える
1

これには、bash の履歴拡張を使用できます。

^tom^richard- これにより、前のコマンドが再実行され、 が置き換えrichardられtomます。

バッシュ履歴の拡張

于 2013-06-13T16:04:58.210 に答える