同じ行(たとえば、リンク)でコマンドの一部(まだ実行されていない)を繰り返すことができるかどうかを知りたいです。
このコマンドを実行したいとしましょう。
mkdir -p /some/long/dest/path && rsync -azP /some/long/src/path /some/long/dest/path
次のように入力することは可能ですか?
mkdir -p /some/long/dest/path && rsync -azP /some/long/src/path /path/at/x:2
明らかに、x:2
配列のインデックスは最後に実行されたコマンドだから、文字列を一緒にリンクしてコマンドを再利用できるかどうか疑問に思います。x
現在の文字列位置です。
ベストアンサー1
行編集を使用してパラメータを取得し、行のmkdir
末尾に貼り付けることができます。 (私はvi
-styleライン編集を使用するので非常に簡単です。ESCを押して編集モードに入り、そのパスにジャンプし、パスをドラッグして貼り0WW
付けます。default -styleライン編集にも同等の機能があるとします。)mkdir
yW
p
emacs
または、
p=/some/long/dest/path; mkdir -p "$p" && rsync -azP /some/long/src/path/ "$p"
それとも対話型セッションなので、mkdir
結果を確認してください。検査パス:
mkdir -p /some/long/dest/path
rsync -azP /some/long/src/path/ !$
以前に発生したことがない場合は、最後のコマンドの最後の引数()を!$
置き換えることができます。 (他の中から)$
にありますman bash
。試してみて、どのように進行しているかを確認してください。
date --date tomorrow
echo !$
date --date !$
プロジェクトは最初から参照されますecho !!:0
。
その主張をどのように引用すべきかわかりません。現在のこのスタイル演算子と一緒にコマンドラインを使用してくださいhistory
。