多くの技術ユーザーと同様に、私もターミナルに引き寄せられる傾向があります。その理由は、生産性を高めるツール、あるいはゲームの場合は非生産性を高めるツールがたくさんあるからです。ここでは、Linux ターミナルでの生活に役立つお気に入りのツールをいくつか紹介します。
ヴィム
私の指に最適なエディター
本格的な端末環境にはエディタが必要です。 Vim は私が選んだエディターです。私が macOS で Unix コマンド ラインを使い始めて以来、Vim は常に相棒でした。それはまだ「Mac OS X」と呼ばれていたほど昔のことです。
DistroTube には YouTube で Vim をデモするためのスクリーンキャストがあります。
私はしばらくの間、そのライバルである GNU Emacs も使用していましたが、最終的には Vim に戻ってきました。理由の 1 つは、「チクレット」キーボードを備えたラップトップを購入したためで、Emacs のキーストロークが物理的に不快に感じられたためです。 Vim は私の指にとってより快適です。
また、私はファイルにアクセスしては終了することがよくあり (これが、初めて Vim ユーザーの多くを悩ませます)、Vim の方が私の作業スタイルに合っています。 Vim のモダリティ、つまりコマンド モードと挿入モードの間で動作が異なることは、元の Vi から継承されたものです。それはまだ議論の余地がありますが、私にとってはうまくいきました。
多くの複雑なソフトウェア プログラムと同様、頻繁に行う作業に慣れることがコツです。私にとって、それは動き回って編集することです。 Vim は必要なことをすべて実行してくれるので、本格的な IDE は必要ありません。ターミナルは私のIDEです。
IPython + NumPy + Python 統計ライブラリ
統計もできる卓上電卓
インタラクティブな Python モードが優れた卓上電卓になるというのはよくある冗談です。私はソフトウェア電卓よりもそれを好む傾向があります。主な理由は、グラフィカル電卓がスキューモーフィックであるためです。彼らは手持ちの電卓を模倣しようとします。これは、レストランでスマートフォンでチップを知る場合には機能しますが、PC のように手に持たないマシンではあまり意味がありません。ボタンをクリックするよりも数式を入力する方が簡単です。
Python の組み込みインタープリターには制限があります。通常のターミナルを使用している場合は、シェル履歴やコマンドライン編集を使用して入力した内容を思い出せることがわかりますが、標準の Python インタープリターにはこれらの機能がありません。 IPython はこれを修正し、「マジック」コマンドなどの他の機能を追加します。 Python のライブラリを利用することもできます。 NumPy、SciPy、SymPy、statsmodels を Pixi 環境にインストールして、すぐに利用できるようにしました。
私は、微積分、線形代数、統計ができる卓上電卓を持っているのが好きです。これらの機能を備えたハンドヘルド電卓や Mathematica のようなパッケージを購入するには、数百ドルの費用がかかります。私の端末にはすべて無料であります。
tmux
複数の端末と永久オンライン状態
tmux は端末マルチプレクサで、1 つの端末をあたかも多数の端末であるかのように使用できるようにするツールです。新しいターミナルを作成してそれらを切り替えることができるため、タブ ブラウジングに似ています。
後でセッションを切断して再接続することもできます。この機能は、リモート SSH または Mosh セッションでより便利です。 Wi-Fi の中断などで接続が中断された場合でも、何事もなかったかのように再接続、再接続して続行できます。
トイレ
端末での文字数カウント
フリーライターである私は、作品の文字数要件を満たさなければなりません。これを簡単に実行できるコマンドライン ツールがあります。トイレといいます。
-w オプションは単語単位でカウントします。書き込んでいる内容をクリップボードにコピーして、次のコマンドを入力します。
wc -w
次に、ターミナルに貼り付け、Ctrl + d を押して、単語数を取得します。これは、セクションなど、作業中の一部の部分の単語数をカウントするのに便利です。
zsh / オーマイザッシュ
シェルのカスタマイズが簡単
Bash はほとんどの Linux ディストリビューションのデフォルトのシェルですが、zsh (「ジーシェル」と発音) は大幅なアップグレードです。多くの人が、その拡張されたパターン マッチングまたは「グロビング」操作を指摘しています。サブディレクトリではワイルドカードを再帰的に使用できます。
私にとって zsh の主な魅力は、Oh My Zsh 拡張機能です。 zsh を簡単にカスタマイズできます。よく使用される用途の 1 つは、広範なテーマです。私のお気に入りは「lukerandall」テーマです。
ウィーチャット
IRCはまだ生きています
IRC は技術者以外のほとんどのユーザーにとっては脇に追いやられているかもしれませんが、オープンソース プログラムのサポートには依然として便利です。主要なオープンソース プログラムの開発者の多くは、IRC チャネル、特に Libera Chat に集まっています。 Weechat は、シェル アカウントなどのリモート サーバー上の tmux と併用するのが最適です。このようにして、多くの IRC ユーザーは 24 時間年中無休で接続を維持しているようです。
オオヤマネコとw3m
テキストモードのWebブラウジング
私のブラウジングのほとんどは Chrome を使用していますが、テキストベースの Web ブラウザーもまだ存在します。 Lynx と w3m は、現在も開発が進められている主要なテキストベースのブラウザです。これらは、サイトが検索エンジンにどのように表示されるか、またはテキストのみのレンダリングがどのように機能するかを評価するのに役立ちます。後者は、目の見えない人や視覚に障害があり、スクリーン リーダーを使用している人向けにアクセシブルな Web サイトをデザインする場合に役立ちます。
もう 1 つの便利な用途は、後で使用するために Web サイトのテキストをファイルにダンプすることです。
カール
ブラウザを使わずにファイルをダウンロードする
curl は、リモート サーバーからファイルをダウンロードするためのユーティリティです。これはインストール スクリプト内で広く使用されています。
南極のペンギンのデータセットのコピーをダウンロードするには、次のコマンドを使用します。
curl -O https://vincentarelbundock.github.io/Rdatasets/csv/modeldata/penguins.csv
ほとんど
見栄えの良いマンページビューア
Most は、マニュアル ページなどを表示するためのページング ユーティリティです。標準のレスポケベルよりも見栄えが良いという理由だけで、これが気に入っています。あまり頻繁に使う機能ではありませんが、画面を左右にスクロールしたり、複数のウィンドウを開くこともできます。
ゲーム
私もターミナルで楽しむのが好きです
ターミナルで楽しむのも好きです。 ネットハック は私のお気に入りのゲームの 1 つです。それは典型的な「ローグライク」です。イェンドールのアミュレットを探して、自動生成されたダンジョンを探索します。そしてほとんどが死ぬ。いつか「昇り」、つまり試合に勝ちたいと思っています。
また、BSD ゲームも好きです。BSD ゲームは、伝統的に BSD システムに同梱されていたことからこの名前が付けられました。私はそれらすべてをプレイしましたが、その多くは今でも残っています。
ターミナルではやるべきことがたくさんあります
プログラマーや技術者が Linux 上でターミナルを頻繁に使用する理由の 1 つは、Linux で実行できることがまだたくさんあり、現在でもターミナル用に新しいプログラムが作成されているためです。コマンド ラインなしでのコンピューター生活を想像することはほとんどできません。