Kali Linux の Zsh セットアップが私をターミナルファンに変えた経緯

in tech

Debian、Ubuntu、Linux Mint で Bash を何年も使用した後、Kali Linux で Zsh に初めて出会ったとき、目の前に新しい世界が開いたかのようでした。構文の強調表示、コマンドの提案、そしてすべての豪華な色を見て、コマンド ラインを無視するという自分の決定を再考させられました。 Bash を Zsh に置き換える理由はたくさんありました。

2 番目の衝撃は、Oh My Zsh というフレームワークを使用して Zsh をさらに拡張できることを知ったときに起こりました。 Zsh と Oh My Zsh と一緒に、私はターミナルでのご褒美を待っていることに気づきました。

Kali Linux は、私が尋ねることもなく Zsh を渡してくれました。

ディストリビューションにしか興味がなかったのですが、最終的にはお気に入りのシェルを使用することになりました

Kali Linux と Plasma デスクトップ クレジット: Kali Linux

Kali Linux について知らない方のために説明しますと、これはサイバーセキュリティの学習を目的とした特殊な Linux ディストリビューションです。 CTF をプレイしたり、セキュリティ ツールをいじりたかったのでインストールしました。初めてターミナルを開いたときは、とてもうれしかったです。 Kali は、2020.3 リリースで、少なくともデスクトップとクラウド イメージでは Zsh をデフォルトのシェルにしました。

最初に気づいたのは、2 行にわたるプロンプトでした。タイピングを始めると、物事がさらに面白くなりました。カーソルの前に灰色のテキストが表示され、コマンドを入力すると色が変わりました。初めて端末が私に注目したような気がしました。

カリ氏の移籍には確かな理由もあった。 Kali のリリース ノートでは、Bash では多くのことができるが、Zsh ではさらに多くのことができると説明しています。彼らは、多くの人に愛される貝である魚も検討しましたが、POSIX 互換ではないため省略しました。簡単に言えば、多くの一般的なワンライナーはそこでは機能しません。

提案は何よりも先に私を納得させた

私のコマンドを記憶した灰色のテキストは、どのチートシートよりも優れた効果を発揮しました

Zsh の自動提案が実行され、ディレクトリが提案されます。

私にとって、自己暗示は完全な画期的なものでした。特に、長くネストされたフォルダーをナビゲートする場合に最適です。私の経験では、頻繁にアクセスしたディレクトリがいくつかありました。また、覚えにくいフラグを含む非常に特殊な長いコマンドにも役立ちました。

その後すぐに、Tab キーを押してさらに候補を表示し、右矢印キーを押してターミナル内で候補を完了していることに気づきました。頻繁に使用するコマンドを覚えたり、繰り返し入力したりする必要はもうありません。取得する提案は最新性に基づいています。つまり、最初に受け取る提案は、それらの文字で始まる、使用した最新のコマンドです。

残りの半分は色で決まりました。構文の強調表示により、入力中にコマンドがマークアップされます。そうすれば、実行する前に確認できます。コマンドのスペルが間違っている場合は、Enter キーを押しても失敗するのではなく、すぐに目立ちます。

ただし、ここが面白いところです。これら 2 つの機能はどちらも Zsh 自体には組み込まれていません。どちらも、zsh-autosuggestions と zsh-syntax-highlighting という別個のプラグインです。 Kali は、それらをデフォルトの Zsh セットアップにバンドルします。つまり、ターミナルについて学ぶきっかけとなったアドオンは、実際には自分ではインストールしたことのない 2 つのアドオンでした。

Oh My Zsh は本当の宝石がある場所です

純正 Zsh をさらに強力に

Oh-My-ZSH とその前に Apple ロゴが付いた Linux マスコットが描かれた端末。

以前、Oh My Posh を使用して Windows ターミナルをクールに見せました。それで、Oh My Zsh のことを知ったとき、私は興奮しました。公式スクリプトを使用してすぐにインストールしました。

sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"

300 を超えるオプションのプラグインと 100 をはるかに超えるテーマを備えたこのコミュニティ主導のフレームワークは、Zsh 構成を管理するために必要な欠けていたパズルのピースでした。

ただし、注意が必要です。インストール直後、構文の強調表示と自動提案が機能しなくなっていることがわかりました。これは、インストーラーが既存の .zshrc ファイルの名前を .zshrc.pre-oh-my-zsh に変更するためです。 Kali では、その古いファイルが提案と色をロードするため、これらの行を新しい設定に戻す必要がありました。

それから私はプラグインとテーマを調べ始めました。 GitHub README に各プラグインのドキュメントが詳細に記載されていることには驚きました。それらの使用は非常に簡単でした。設定ファイルにプラグイン名を追加するだけで済みました。テーマを変更するには、使用中のテーマ名を更新するだけです。

プラグインの中には永久スポットに値するものもあります

日々の仕事を変えるいくつかの小さなアドオン

Git エイリアス「gst」が Oh My Zsh で使用されています。

フレームワークに慣れたら、いくつかの便利なプラグインを探し始めました。リストには非常に多くのものが含まれているため、最初は必要なものを見つけるのが困難でした。セットアップを肥大化させたくなかったので、いくつかのセットアップから始めました。

git

プログラマーとして、私はほぼ毎日 Git に触れる必要があります。ということで、これは必須でした。一般的なコマンドの短いエイリアスの長いリストが追加されます。例えば、 gst git status を実行し、 gcmsg git commit –message を実行します。さらに良いことに、README にはすべてのエイリアスの後ろに完全なコマンドがリストされているため、途中で Git 独自のフラグを見つけることができます。

須藤

長いコマンドを入力したときに、その前に sudo を追加していないことに気づいた場合でも、戻って追加する必要はありません。 Esc を 2 回押すと、このプラグインは先頭に sudo を追加します。

ゾキシド

長いフォルダー パスを入力すると、すぐに古くなってしまいます。 zoxide は、自らをよりスマートな cd コマンドと呼んでいます。最も頻繁に使用するディレクトリを記憶します。したがって、フルパスを入力する代わりに、次のように入力します。 z その後にフォルダー名の一部が続きます。

パイソン

私は Python コードをよく書きます。プロジェクトを開始する必要があるときは、常に多くのセットアップが必要になります。このプラグインはそれを簡単に処理します。タイピング mkv 現在のフォルダーに仮想環境を作成し、 ヴラン それを活性化させます。それもあります パイクリーン、バイトコードとキャッシュ ファイルを削除します。

端末はもう見知らぬものではありません

考えてみると、ターミナルは最初はたくさんのコマンドやフラグが同時に投げられてくるので怖く見えました。最終的に、多くの代替 CLI ツール、時間を節約するターミナル トリック、そしてもちろん、応答する新しいシェルを見つけました。これらすべてを組み合わせることで、コマンド ラインを克服することができました。

このテーマについてさらに詳しく知りたい方は以下をご覧ください

完全ガイドはこちら

関連記事

前の投稿
Google Keep のタスクを Gemini に渡したら数時間戻ってきました
次の投稿
3 枚の簡単な 3D プリントで、何年も無視してきた家の周りの小さな煩わしさが解決されました