Linuxはそのコマンドで有名です。これは、Linuxが行うほとんどすべてが端末からも呼び出すことができるためですが、オペレーティングシステムとしてのLinuxは高度にモジュール化されていることも理由です。そのツールは、かなり具体的な結果を生成するように設計されており、いくつかのコマンドについてよく知っている場合は、それらを興味深い方法で組み合わせて、有用な出力を得ることができます。 Linuxを学ぶことは、コマンドを学び、それらのコマンドを興味深い組み合わせでつなぎ合わせる方法を学ぶことと同じです。
その他のLinuxリソース
- Linuxコマンドのチートシート
- 高度なLinuxコマンドのチートシート
- 無料のオンラインコース:RHELの技術概要
- Linuxネットワーキングのチートシート
- SELinuxチートシート
- Linuxの一般的なコマンドのチートシート
- Linuxコンテナとは何ですか?
- 最新のLinux記事
ただし、学習するLinuxコマンドが非常に多いため、最初の一歩を踏み出すのは困難に思えるかもしれません。最初にどのコマンドを学ぶ必要がありますか?どのコマンドをよく学ぶ必要がありますか?また、どのコマンドを習得するだけで済みますか?私はこれらの質問についてよく考えましたが、普遍的な答えがあるとは確信していません。 「基本的な」コマンドはおそらく誰にとっても同じです:
-
ls
-
cd
-
mv
これらは、Linuxファイルシステムをナビゲートできることになります。
ただし、基本を超えて、「デフォルト」コマンドは業界ごとに異なります。システム管理者は、システムの内省と監視のためのツールを必要としています。アーティストは、メディア変換とグラフィック処理のためのツールを必要としています。ホームユーザーは、PDF処理、予定表作成、またはドキュメント変換用のツールが必要になる場合があります。リストはどんどん増えていきます。
ただし、一部のLinuxコマンドは特に重要であることが際立っています。これは、誰もが時々必要とする一般的な低レベルのツールであるか、誰もがほとんどの場合に役立つと思われる汎用ツールであるためです。
リストに追加する3つは次のとおりです。
目的: sed
コマンドは、Linuxユーザーなら誰でも知っていることで恩恵を受けることができる優れた万能ツールです。表面的には、これは単なる端末ベースの「検索と置換」です。これにより、複数のドキュメント間ですばやく簡単に修正できます。 sed
コマンドを使用すると、個々のファイルを開いたり、単語を検索して置換したり、ファイルを保存したり、ファイルを閉じたりするのにかかる時間(または場合によっては累積日数)を節約できました。それだけで、Linuxターミナルの学習への投資が正当化されます。 sed
を知ったら まあ、あなたはあなたの人生を楽にする潜在的な編集トリックの全世界を発見する可能性があります。
強み: コマンドの強みは繰り返しです。編集するファイルが1つしかない場合は、そのファイルを開いて、従来のテキストエディタで「検索して置換」するのは簡単です。ただし、5つまたは50のファイルに直面した場合は、適切な sed
コマンド(おそらく速度を上げるためにGNU Parallelと組み合わせる)は、1日の時間を取り戻すことができます。
弱点: 変更を加えるために費やすと予想される時間と、適切な sed
を構築するのにかかる時間とのバランスをとる必要があります。 指図。一般的なsed's/ foo / bar / g
を使用した簡単な編集 構文は、ほとんどの場合、コマンドの入力にかかるわずかな時間の価値がありますが、複雑な sed
ホールドスペースとed
のいずれかを利用するコマンド スタイルのサブコマンドは、数回の試行錯誤と組み合わせて深刻な集中力を発揮する可能性があります。結局のところ、新しい方法で編集を行う方がよい場合があります。
チート: sedチートシートをダウンロードして、1文字のサブコマンドとその構文の概要をすばやく参照してください。
目的: grep
コマンドは、明らかに不格好な説明から来ています:グローバル正規表現print。つまり、 grep
ファイル(または他の形式の入力)で見つかった一致パターンを端末に出力します。そのため、特に大量のテキストをスクラブするのに適した優れた検索ツールになります。
URLを見つけるために使用できます:
$ grep --only-matching \
http\:\/\/.* example.txt
これを使用して、特定の構成オプションを見つけることができます:
$ grep --line-number \
foo= example.ini
2:foo=true
もちろん、他のコマンドと組み合わせることができます:
$ grep foo= example.ini | cut -d= -f2
true
強み: grep
コマンドは簡単な検索コマンドです。上記のいくつかの例を読んだ場合は、基本的にコマンドを学習したことになります。さらに柔軟性を高めるために、拡張正規表現構文を使用できます。
弱点: grep
の問題 また、その強みの1つです。これは、単なる検索機能です。探しているものを見つけたら、それをどうするかというより大きな問題に直面するかもしれません。答えは、出力をファイルにリダイレクトするのと同じくらい簡単な場合があります。ファイルは、フィルター処理された結果のリストになります。ただし、より複雑なユースケースは、awk、curl(ちなみに、curl用のチートシートもあります)、または最新のコンピューターで使用できる他の何千ものオプションなど、任意の数のコマンドでさらに処理することを意味します。
チート: grepチートシートをダウンロードして、その多くのオプションと正規表現構文のクイックリファレンスを入手してください。
目的: GNU別れコード> ほとんどの人にとって日常的に使用するコマンドではありませんが、ハードドライブを操作するための最も強力なツールの1つです。ハードドライブの苛立たしいことは、新しいハードドライブを入手してコンピュータ用にセットアップするまで、何年もかけてそれらを無視することです。ドライブを最適にフォーマットする方法がわからないことを覚えているのは、そのときだけです。そのとき、
parted
に精通している必要があります 便利です。 GNU別れコード> ディスクラベルを作成し、パーティションを作成、バックアップ、およびレスキューできます。さらに、ドライブとそのレイアウトに関する多くの情報を提供し、通常、ファイルシステム用にドライブを準備することができます。
強み: 私がparted
を愛する理由 fdisk
を介して 同様のツールは、簡単なインタラクティブモードと完全に非インタラクティブなオプションを組み合わせたものです。 parted
の使用方法に関係なく 、そのコマンドは一貫した構文に従い、そのヘルプメニューはよく書かれていて有益です。さらに良いことに、コマンド自体はスマート 。ドライブをパーティション分割する場合、セクターからパーセンテージまでの任意のサイズを指定でき、 parted
パーティションテーブルの配置のより細かい点を理解するために最善を尽くします。
弱点: GNU parted
を学ぶのに長い時間がかかりました Linuxに切り替えた後、非常に長い間、ドライブが実際にどのように機能するかをよく理解していなかったためです。 GNU別れコード> また、ほとんどの端末ベースのドライブユーティリティは、パーティションとは何か、ドライブにはセクターがあり、最初はファイルシステムがないディスクラベルとパーティションテーブルが必要であることなどを前提としています。急な学習曲線があります。ハードドライブテクノロジーの基礎ほどコマンドではなく、GNU
別れ
です。 潜在的なギャップを埋めるために多くのことをしません。そのためのグラフィカルアプリケーションがあるので、プロセスをステップスルーするのは間違いなくコマンドの仕事ではありませんが、GNU parted
のワークフローに焦点を当てたオプションです。 ユーティリティへの興味深い追加になる可能性があります。
チート: 多くのサブコマンドとオプションのクイックリファレンスについては、別れの虎の巻をダウンロードしてください。
これらは私のお気に入りのコマンドの一部ですが、リストは当然、コンピューターの使用方法に偏っています。私はシェルスクリプトをたくさん使っているので、 grep
を多用しています。 構成オプションを見つけるには、 sed
を使用します テキスト編集にはparted
を使用します マルチメディアプロジェクトに取り組んでいるときは、通常、多くのハードドライブが関係しているからです。自分のお気に入りの(または少なくとも頻繁に)独自のワークフローをすでに持っているか、まもなく開発する予定です。 )コマンド。
新しいプロセスを日常業務に統合するときは、チートシート(上記のリンクのようなもの)を作成またはダウンロードしてから、練習します。しかし、私たちは皆独自の方法で学習するので、自分に最適なものを見つけて、新しい重要なコマンドを学びます。最も頻繁に使用するコマンドについて学習すればするほど、コマンドをより効果的に機能させることができます。