次のことを端末に入力したとします。
wgets "link"
私は応答を受け取ります:
コマンド 'wgets'が見つかりません、つまり:コマンド 'wget' from package'wget '(main)
私は間違いを犯しました、そしてターミナルは私に警告しました。
ターミナルが警告した後に入力できるコマンドはありますか?そうすれば、それはそれが思っていたもので上記のコマンドを実行しますか?
例えば:
->wgets "link"
->No command 'wgets' found, did you mean:
Command 'wget' from package 'wget' (main)
->yes (this command I am looking for ... is there one?)
-> executing wget "link"
zsh に切り替えます(デフォルトでmacOSにインストールされ、すべての主要なLinuxディストリビューション、* BSD、および他のUnixライクなオペレーティングシステムのソフトウェアコレクションでパッケージとして利用できます)。コマンド名のオートコレクトがあります。
% wgets
zsh: correct 'wgets' to 'wget' [nyae]? y
wget: missing URL
…
Bash
では、search and replace
を使用して、以前に実行した誤ったコマンドを変更できます。あなたの例から:
->wgets "link"
->No command 'wgets' found, did you mean:
Command 'wget' from package 'wget' (main)
->^wgets^wget^
wgets
はwget
に置き換えられ、コマンドが実行されます。
履歴リストの前半のコマンドでこれを容易にするには:
->!wgets:s/wgets/wget/
man 3 history
の下のEvent Designators
から:
!string
Refer to the most recent command starting with string.
...
^string1^string2^
Quick Substitution. Repeat the last command, replacing string1
with string2. Equivalent to ''!!:s/string1/string2/''.