コマンド紹介シリーズ:thefuck
今回から、私が普段使ってるコマンドを紹介していくシリーズを始めたいと思います。記念すべき第一回は、thefuckというコマンドを紹介します。名前だけ見るとなかなかにパンチが効いたものですが、スター数も多いコマンドですので、ぜひ興味がある方はみてください。
※ 本記事を書くにあたり、果たしてこの文字を入力して良いのか迷いましたが、①あくまでコマンド紹介であること、②他の記事で4文字が入っている記事も結構ありそうだったので採用しました
thefuckとは?
一言で言ってしまうと、
コマンド入力をミスした時に、本来実行したかったコマンドを想定して出してくれる
コマンドになります。例えば、macbookを使っていてbrew update
しようとしたんだけどうっかりbrewupdate
とスペースを省略してしまった時にこのコマンドを打つと、「brwe update
をやりたかったんじゃないですか?」と提案してくれます!
以下ががGitHubレポジトリになります。
使ってみる
インストール
私はmacbookを使っているので以下のコマンドでインストールしました。
brew install thefuck
pip経由などでもインストールできるとのことなので、ご自身の環境に合わせてみてください。
コマンドを使ってみる
それではコマンドを使ってみましょう。ちなみに注釈として、thefuckという名前ですが実際に使うときはtheをとった4文字になります。
最初に例を出したように、brew update
と実行しようとしてbrewupdate
を実行してしまった時を想定してみます。
まずbrewupdate
と入力すると以下のような出力となりました(ちなみに私はzshを使っています)。
> brewupdate
zsh: command not found: brewupdate
そして今回のコマンドを実行してみます。
> fuck
すると、まず第一候補として以下が表示されました。
lupdate [enter/↑/↓/ctrl+c]
lupdate
コマンドを実行したかったわけではないので、十字キーの下を押して次のコマンドを見てみると以下のようになりました。
brew update [enter/↑/↓/ctrl+c]
まさに求めていたものが出てきましたので、エンターを押します。すると以下の見慣れた出力が姿を表しました。
==> Updating Homebrew...
他にも試してみようと思います。自分はPython使いなのでこちらのようにPythonをtypoしてみました。
> pthon main.py
zsh: command not found: pthon
もちろんエラーが出るのですが、同様にコマンドを実行すると以下のようにちゃんと求めていた結果を返してくれます。
> fuck
python main.py [enter/↑/↓/ctrl+c]
また、ファイル名を以下のように失敗したとします。
> python min.py
python: can't open file '/Users/.../min.py': [Errno 2] No such file or directory
この場合でも、コマンドを利用すると正しい結果を返してくれます。
> fuck
python main.py [enter/↑/↓/ctrl+c]
まとめ
初めてこのコマンドを知ったときは名前的によろしくないものなのかな?と思いましたが、実際に使ってみるとよくタイポとかをしてしまう自分からするとかなりありがたいコマンドでした。もし間違えた時に打ち直すの手間だからこのコマンド使ってみたいという方はお試しいただければと思います。
Discussion