入力したら
mv a.txt b.txt
その後、間違えたことに気づき、行を再入力してパラメータを切り替えるのではなく、次のような結果が表示されます。
mv a.txt b.txt --reverse
答え1
私はGNUでそのような主張を知らないがmv
、bashを使うなら、行を読むのに役立ちます:
shell-transpose-words
(M-C-t
)単語の後のポイントを移動しながら、ポイントの前の単語をポイントの後の単語の上にドラッグします。挿入点が行の末尾にある場合、行の最後の2つの単語が変わります。単語の境界は
shell-forward-word
と と同じですshell-backward-word
。
だから:
$ mv bar/baz\ foo foo\ bar/baz
^ cursor here
Esc次にCtrlT(または)を押しますAltCtrlT。結果:
$ mv foo\ bar/baz bar/baz\ foo
^ cursor here
答え2
残念ながらそうではありません。ただし、シェルのテキスト編集機能を使用してキーストロークを保存できます。下に^
カーソル位置が表示されます。
例: 大きな打撃
- 開始状況:
mv a.txt b.txt ^
- Ctrl+を押すw
「最後の単語」(mv a.txt ^
b.txt
)は切り捨てられ、内部バッファに格納されます。 - カーソルが前になるまでCtrl+を押します。Left
a.txt
mv a.txt ^
- Ctrl+を押すy
最後に削除した単語を貼り付けてください。mv b.txta.txt ^
- スペースを挿入する
まだ面倒ですが、より速いです。気づく端末エミュレータでこれらのキーストロークの1つを飲み込むと、残念ながら幸運ではありません。
答え3
exampleというスクリプトを作成して、unmv
必要な場所$PATH
(たとえば/usr/local/bin
)に配置できます。
#!/bin/sh
mv "$2" "$1"
その後、誤って入力した後、入力だけで変更を元に戻すmv a.txt b.txt
ことができます。unmv a.txt b.txt