GNU/Linux >> Linux の 問題 >  >> Linux

すべてのユーザーに必要な20のLinuxコマンド

暗いターミナルウィンドウにコマンドを入力するのは時代遅れに思えるかもしれませんが、多くのコンピューターユーザーにとって、コンピューターが実行できるほぼすべてのタスクを実行するための最も効率的で、最もアクセスしやすく、最も明確な方法です。最近では、macOSやWindowsなどの非オープンプラットフォームにオープンソースコマンドを提供するすべてのプロジェクトのおかげで、ターミナルコマンドはLinuxやBSDユーザーだけでなく、すべての人に関係があります。平均的なPOSIXコンピューターに何千ものコマンドがインストールされていることを知って驚くかもしれませんが、もちろん、それらの多くは、少なくとも直接または定期的に使用することを意図したものではありません。一部のコマンドは他のコマンドよりも普遍的に有用ですが、端末を効果的に使用するために絶対に必要なコマンドはさらに少なくなります。

ターミナルユーザーが使用する可能性のある上位20のコマンドは次のとおりです。

cd

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

ターミナルの外では、アイコンをクリックして1つのフォルダーから別のフォルダーに移動しますが、ターミナルでは、cdを使用します。 。 cd コマンド。ディレクトリの変更の略です。 は、Linuxシステムを移動する方法です。これは、ある場所から別の場所への最速かつ最も直接的なルートです。

たとえば、デスクトップで、ホームディレクトリ(すべてのフォルダを保持する場所)からpresentationsというフォルダに移動する場合 、次に、最初にDocumentsを開く必要がある場合があります フォルダを開き、workというフォルダを開きます 、次にprojects フォルダ、次にconference フォルダ、そして最後にpresentations エキサイティングなLibreOfficeImpressスライドショーを含むフォルダー。それは多くのダブルクリックです。また、新しいウィンドウが表示される場所や、脳が追跡するための多くのウェイポイントによっては、画面上を移動することが多くなる場合があります。多くの人は、すべてを維持することで、この一見マイナーなタスクを回避します。 デスクトップ上。

ターミナルユーザーは、次のように入力するだけでこの問題を回避できます:

$ cd ~/Documents/work/projects/conference/presentations

経験豊富な端末ユーザーは、そのすべてを入力することすらしません。 タブを使用します それらの単語をオートコンプリートするためのキー。また、オートコンプリートに頼る必要がない場合もあります。代わりにワイルドカードを使用できます:

$ cd ~/Doc*/work/*/conf*/p*

pwd

バカルー・バンザイの言葉を借りれば、「どこへ行っても、そこにいるのです。」

それが正確にどこにあるかを把握する必要がある場合は、pwdを使用します 指図。 pwd 印刷作業ディレクトリの略です そしてそれはまさにそれがすることです。 --physical (または単に-P 一部の実装では)すべてのシンボリックリンクが解決された場所が表示されます。

$ pwd
/home/tux/presentation

$ pwd --physical
/home/tux/Documents/work/projects/conference/presentations

sed

sedとしてよく知られています 、ストリームエディタは強力な一括検索検索と置換 コマンドですが、正規のテキストエディタでもあります。紹介記事を読んで使い方を学び、高度なチュートリアルとチートシートでエキスパートになることができます。

grep

grep コマンドは非常に普及しているため、動詞(「いくつかのファイルをgrepします」)および動名詞(「いくつかの出力をgrepします」)としてよく使用されます。これは、ログファイルを調べている場合でも、他のコマンドの出力を解析している場合でも、シェル内のテキストを解析する際の重要なコンポーネントです。これは、忙しいユーザーが特定の情報に集中するための方法です。コンピューティングの世界にどれだけのデータがあるかを考えると、それが人気のあるコマンドであることは不思議ではありません。紹介記事を読んでgrokgrepにアクセスし、チートシートをダウンロードしてください。

ファイル

fileを使用する ファイルに含まれるデータの種類を知る必要がある場合のコマンド:

$ file example.foo
example.foo: RIFF (little-endian) data, Web/P image [...]

$ file example.bar
example.bar: ELF 64-bit LSB executable, x86-64 [...]

file もちろん、コマンドは魔法ではありません。ファイルがそれ自体を識別する方法に基づいて報告するだけであり、ファイルが間違っている、破損している、または偽装されている可能性があります。 hexdumpによる厳密な検査 より確実になりますが、カジュアルに使用する場合は、file コマンドは便利です。

awk

Awkは単なるコマンドではありません。それは文字通りのプログラミング言語です。無料のAwkebookをダウンロードして学習すれば、これまで不可能だと思っていたスクリプトを作成できます。

カール

curl コマンドは、端末用の非対話型Webブラウザです。これは、WebおよびAPI開発者向けの開発ツールです。柔軟性のために複雑なコマンドですが、端末からネットワークサービスとスムーズにやり取りしたい場合は、学ぶ価値があります。

無料のcurlをダウンロードしてください 虎の巻なので、多くのオプションを内部化できます。

ps

システムのリソースの管理は主にカーネル次第ですが、手動によるアプローチが必要な場合は、psがあります。 指図。 psについて学ぶ 私のモニターでは、procps-ngの記事を使用してLinuxシステムを使用しています。

cat コマンドはconcatenateの略です 、そして分割されたファイルを結合するのに一度は非常に便利でした(直感的にsplitと呼ばれるコマンドを使用) )サイズ制限のため、いくつかの小さなファイルに分割します。今日、cat headを使用しない限り、テキストファイルの内容をすぐに参照できるように端末にダンプする方法として主に使用されます。 、tailmore 、またはless そのために。

ほぼ非推奨の本来の目的にもかかわらず、また他のいくつかのコマンドもその二次機能を実行しているにもかかわらず、cat まだ便利なユーティリティです。たとえば、コピーの代用にすることができます(cp )コマンド:

$ cat myfile.ogg > /backups/myfile.ogg

それはファイルの不便な目に見えない文字を明らかにすることができます。 タブ YAMLを壊す文字は、^Iとして表示されます --show-tabsを使用 オプション:

$ cat --show-tabs my.yaml

---

- hosts: all
  tasks:
  - name: Make sure the current version of 'sysstat' is installed.
    dnf:
     name:
^I- sysstat
^I- httpd
^I- mariadb-server
     state: latest

--show-nonprintingを使用して非印刷文字を表示できます 、行の終わりを--show-endsでマークします 、--numberで行番号を指定します 、など。

検索

find コマンドはファイルを見つけるのに役立ちますが、その多くのオプションのおかげで、さまざまなフィルターとパラメーターを持つファイルを見つけるのに役立ちます。私の紹介記事から基本を学びましょう。

そして、なぜ最も基本的なコマンドであるのか疑問に思っている場合は、謙虚なls コマンドはこのリストに含まれていません。これは、findの柔軟性によるものです。 。リストファイルを見つけることができるだけではありません:

$ find .
./bar.txt
./baz.xml
./foo.txt
[...]

長いリストを提供することもできます:

$ find . -ls
3014803  464 -rw-rw-r--   1 tux users  473385 Jul 26 07:25 ./foo.txt
3014837  900 -rwxrwxr-x   1 tux users  918217 Nov  6  2019 ./baz.xml
3026891  452 -rw-rw-r--   1 tux users  461354 Aug 10 13:41 ./foo.txt
[...]

これは技術的なことですが、知っておくべき巧妙なトリックです。

タール

BSDのtarを引用して、Linuxコマンドについて冗談を言う人もいます。 構文。その評判にもかかわらず、tar コマンドは実際には非常に直感的です。 tar.gzファイルの記事を解凍する方法を読んで、tarをガタガタ鳴らす簡単な秘密を学びましょう。 コマンドオンデマンド。

多かれ少なかれまたはほとんど

ポケットベルはcatのようなものです 、ただし、下にスクロールしてさらにスクロールするまで、画面の下部で出力を一時停止します。これは単純なアプリケーションですが、各実装には微妙な違いがあります。矢印キーまたはスペースバーでスクロールしますか?手動で終了する必要がありますか、それともページャーは表示されているファイルの最後で終了しますか?好みの検索動作は何ですか?お気に入りのポケットベルを選択して、.bashrcに設定します !

sshとscp

OpenSSHは、リモートシステムへの安全な接続を支援するだけでなく、他のコマンドも有効にします。たとえば、多くのユーザーにとって、それは.sshです。 Gitリポジトリとスムーズにやり取りしたり、ウェブサイトに更新を投稿したり、クラウドのコントロールプレーンにログインしたりできるディレクトリ。

mv

mv コマンドは二重の役割を果たします:ファイルを移動し、ファイルの名前を変更します。 --interactiveを含むいくつかの利用可能なセーフガードがあります および--no-clobber 既存のファイル、--backupの破壊を回避するためのオプション 新しい場所で検証されるまでデータが保持されるようにするコマンド、および--update 古いバージョンが新しいファイルを置き換えないようにするオプション。

sudo

既知のユーザー名とすべての単一のユーザーがいる場合 システム上の特権、そのユーザーはすぐに攻撃の標的になります。リテラルのrootの必要性を排除することによって ユーザー、sudo コマンドは、システムに関する重要な情報を一般的な知識からエレガントに削除します。ただし、それだけではありません。 sudoを使用 、個々のコマンド、ユーザー、およびグループに至るまでの特権を簡単に管理できます。パスワードなしで選択コマンドを実行したり、ユーザーセッションを記録したり、ダイジェスト検証を使用してコマンドを検証したりできます。

エイリアス

aliasを使用して、長いコマンドを覚えやすいショートカットに変換します コマンド:

$ alias ls='ls --classify --almost-all --ignore-backups --color'

クリア

時々あなたの端末は散らかってしまいます。 clearと入力した後は、すてきで新鮮な画面に勝るものはありません。 (または Ctrl + Lを押す 一部のシェルで)。

setfacl

従来、POSIXファイルのアクセス許可はchownによって決定されていました およびchmod 。ただし、システムはより複雑になっているため、もう少し柔軟性を提供するコマンドがあります。 setfacl コマンドを使用すると、アクセス制御リスト(ACL)を作成し、任意のユーザーにアクセス許可を付与し、フォルダーとその中に作成されたコンテンツのデフォルトのアクセス許可を設定できます。

netcat

すべてのユーザーがnetcat(nc)を必要とするわけではありません )、しかしそれを使用する人の中にはそれをあきらめたいと思う人はほとんどいません。 nc コマンドは多目的ネットワーク接続ツールです。

telnetと同様にポートに接続できます :

$ nc -u 192.168.0.12 80

pingと同様に、ポートにpingを実行できます。 :

$ nc -zvn 192.168.0.12 25

nmapと同様に、開いているポートをプローブできます :

$ nc -zv 192.168.0.12 25-80

そして、それはほんの小さなサンプルです。

あなた

Linuxターミナルは、部分的には、創造的な問題解決に関するものです。コマンドを学習すると、独自のコマンドを作成するために使用できるビルディングブロックも学習します。私のシェル履歴にあるコマンドの多くは、自分で作成したシェルスクリプトです。その結果、私のワークフローは私が働きたい方法に合わせてカスタマイズされています。シェルの重要なコマンドは、独自の有効性と快適さのために設計したものにすることもできます。時間をかけていくつかの優れたコマンドを理解してから、独自のコマンドを作成してください。そして、本当に良いものを見つけたら、それをオープンソースにして、アイデアを他の人と共有できるようにします!


Linux
  1. 生産性のための3つの重要なLinuxチートシート

  2. Linux で特定のユーザーに対して特定のコマンドを無効にする方法

  3. Linux でユーザー コマンドを制限する方法

  1. すべてのLinuxユーザーが知っておくべき10個のコマンド

  2. すべてのLinuxユーザーが知っておくべき3つの便利なハック

  3. Linuxコマンドの基本:プロセス管理用の7つのコマンド

  1. AからZのLinuxコマンド

  2. Linuxsuコマンド

  3. Linuxエコーコマンド