Traffine I/O

日本語

2023-03-03

Linuxコマンド

Linux コマンド

Linuxコマンドは、Linuxオペレーティングシステムで様々なタスクを実行するために使用される一連の命令です。これらのコマンドは、コマンドラインインターフェイス(CLI)またはシェルスクリプトから実行できます。基本的なファイル操作コマンドから高度なネットワークおよびシステム管理コマンドまで、多数のLinuxコマンドがあります。

pwd

Linuxのpwdコマンドは「Print Working Directory」の略で、ターミナルに現在の作業ディレクトリを表示するために使用されます。作業ディレクトリとは、現在の場所またはコマンドプロンプトが指しているディレクトリのことです。

以下は、 pwdコマンドの使用例です。

bash:bash

bash
$ pwd

このコマンドを実行すると、現在の作業ディレクトリの完全なパスがターミナルに表示されます。例えば、ユーザー「john」のホームディレクトリにいる場合、出力は次のようになります。

bash
/home/john

pwdコマンドは、スクリプトの現在のディレクトリを知る必要がある場合や、ファイルシステムをナビゲートして現在の位置を確認したい場合など、多くの状況で役立ちます。

cd

Linuxのcdコマンドは、現在の作業ディレクトリを変更してファイルシステムをナビゲートするために使用されます。このコマンドを使用することで、ユーザーはディレクトリ間を移動してシステム上の様々なファイルやディレクトリにアクセスできます。

例えば、「Documents」ディレクトリに移動したい場合、次のようにしてcdコマンドを使用できます。

bash
$ cd Documents/

これにより、現在の作業ディレクトリが「Documents」ディレクトリに変更されます。これで、このディレクトリ内のファイルやサブディレクトリを表示できます。

前のディレクトリに戻りたい場合は、次のコマンドを使用できます。

bash
$ cd ..

これにより、現在の作業ディレクトリが現在のディレクトリの親ディレクトリに変更されます。 cdコマンドを使用してファイルシステムをナビゲートし、必要なファイルやディレクトリにアクセスするために、続けてcdコマンドを使用できます。

ls

Linuxのlsコマンドは、現在の作業ディレクトリのファイルとディレクトリをリストするために使用されます。 lsコマンドはユーザーがディレクトリの内容を表示し、ファイルシステムをナビゲートするのに役立ちます。

例えば、現在の作業ディレクトリのファイルとディレクトリをリストする場合は、次のようにlsコマンドを使用できます。

bash
$ ls

これにより、現在の作業ディレクトリのファイルとディレクトリの詳細なリストが表示され、許可、所有者、サイズ、変更された日付などが含まれます。

特定のディレクトリ内のファイルとディレクトリをリストするには、例えば、「Documents」ディレクトリのファイルとディレクトリをリストするには、次のコマンドを使用できます。

bash
$ ls -l

これにより、現在の作業ディレクトリのファイルとディレクトリの長いリストが表示され、許可、所有者、サイズ、および変更日付などの情報が含まれます。

また、lsコマンドを使用して特定のディレクトリ内のファイルとディレクトリのリストを表示することもできます。例えば、「Documents」ディレクトリ内のファイルとディレクトリをリストするには、次のコマンドを使用できます。

bash
$ ls Documents/

これにより、「Documents」ディレクトリ内の全てのファイルとディレクトリのリストが表示されます。

cp

Linuxのcpコマンドは、ファイルやディレクトリを別の場所にコピーするために使用されます。

現在の作業ディレクトリから「file1.txt」という名前のファイルを「Documents」というディレクトリにコピーしたい場合、cpコマンドを使用して次のように行うことができます。

bash
$ cp file1.txt Documents/

これにより、「Documents」ディレクトリに「file1.txt」のコピーが作成されます。

ディレクトリ全体とその内容を新しい場所にコピーするには、次のコマンドを使用できます。

bash
cp -r directory1/ Documents/

これにより、「Documents」ディレクトリに「directory1」およびその内容のコピーが作成されます。

また、cpコマンドを使用して、新しいファイルで既存のファイルを上書きすることもできます。例えば、既存の「file1.txt」を新しい「file2.txt」で置き換えたい場合は、次のコマンドを使用できます。

bash
$ cp file2.txt file1.txt

これにより、"file1.txt" を "file2.txt" で上書きします。

mv

Linuxのmvコマンドは、ファイルシステム上のファイルやディレクトリを移動または名前変更するために使用されます。

例えば、"file1.txt" という名前のファイルを "file2.txt" に名前変更したい場合、mvコマンドを使って次のようにします。

bash
$ mv file1.txt file2.txt

これにより、"file1.txt" が "file2.txt" に名前変更されます。

また、現在の作業ディレクトリから "Documents" というディレクトリにある "file1.txt" というファイルを移動したい場合、次のコマンドを使用できます。

bash
$ mv file1.txt Documents/

これにより、"file1.txt" が "Documents" ディレクトリに移動されます。

さらに、mvコマンドを使用して、ディレクトリ全体とその内容を新しい場所に移動することもできます。例えば、"directory1" というディレクトリとその内容を "Documents" という新しい場所に移動したい場合、次のコマンドを使用します。

bash
$ mv directory1/ Documents/

これにより、"directory1とその内容が"Documents"ディレクトリに移動されます。

rm

Linuxのrmコマンドは、ファイルシステムからファイルやディレクトリを削除するために使用されます。

現在の作業ディレクトリから "file1.txt" というファイルを削除したい場合、rmコマンドを使用して次のようにします。

bash
$ rm file1.txt

これにより、現在の作業ディレクトリからfile1.txtを削除します。

ディレクトリ全体とその内容を削除する場合、次のコマンドを使用できます。

bash
$ rm -r directory1/

これにより、directory1とその内容がファイルシステムから削除されます。

rmコマンドを使用して複数のファイルを一度に削除することもできます。例えば、現在の作業ディレクトリにある拡張子.txtの全てのファイルを削除したい場合、次のコマンドを使用できます。

bash
$ rm *.txt

これにより、現在の作業ディレクトリにある全ての拡張子が「.txt」のファイルが削除されます。

注意すべき重要な点として、rmコマンドはファイルシステムからファイルやディレクトリを完全に削除するため、注意して使用する必要があります。

mkdir

Linuxのmkdirコマンドは、ファイルシステム上に新しいディレクトリを作成するために使用されます。

例えば、現在の作業ディレクトリにDocumentsという新しいディレクトリを作成したい場合、次のようにmkdirコマンドを使用できます。

bash
$ mkdir Documents

これにより、現在の作業ディレクトリにDocumentsという名前の新しいディレクトリが作成されます。

また、mkdirコマンドを使用して複数のディレクトリを一度に作成することもできます。例えば、現在の作業ディレクトリにDocumentsPicturesという2つのディレクトリを作成したい場合は、次のコマンドを使用できます。

bash
$ mkdir Documents Pictures

これにより、現在の作業ディレクトリにDocumentsPicturesという2つの新しいディレクトリが作成されます。

特定のパスにディレクトリを作成する場合は、次のコマンドを使用できます。

bash
$ mkdir /home/user/Documents

これにより、/home/userディレクトリにDocumentsという名前の新しいディレクトリが作成されます。

cat

Linuxのcatコマンドは、1つ以上のファイルの内容を連結してターミナル上に表示するために使用されます。

file1.txtというファイルの内容をターミナルで表示したい場合、catコマンドを使用して次のように行います。

bash
$ cat file1.txt

これにより、file1.txtの内容がターミナルに表示されます。

複数のファイルの内容を表示したい場合は、次のコマンドを使用できます。

bash
$ cat file1.txt file2.txt

これは、file1.txtfile2.txtの内容を端末に表示します。

また、catコマンドを使用して新しいファイルを作成したり、既存のファイルに追記したりすることもできます。例えば、新しいファイルfile3.txtを作成し、テキストを追加したい場合は、次のコマンドを使用できます。

bash
$ cat > file3.txt

これにより、テキストを入力できる新しい行が開きます。入力が完了したら、ファイルを保存して終了するには、Ctrl + Dを押します。

touch

Linuxのtouchコマンドは、新しいファイルを作成するか、既存のファイルの変更とアクセスのタイムスタンプを更新するために使用されます。

現在の作業ディレクトリにfile1.txtという新しいファイルを作成したい場合、次のようにtouchコマンドを使用できます。

bash
$ touch file1.txt

これにより、現在の作業ディレクトリに新しい空のファイルfile1.txtが作成されます。

既存のファイルのタイムスタンプを変更する場合は、次のコマンドを使用できます。

bash
$ touch file1.txt

これにより、file1.txtの変更とアクセスのタイムスタンプが現在の時間に更新されます。

touchコマンドを使用して、複数のファイルを一度に作成することもできます。例えば、現在の作業ディレクトリにfile1.txtfile2.txtfile3.txtの3つの新しいファイルを作成したい場合は、次のコマンドを使用できます。

bash
$ touch file1.txt file2.txt file3.txt

これにより、現在の作業ディレクトリに3つの新しい空のファイルが作成されます。

chmod

Linuxのchmodコマンドは、ファイルやディレクトリのファイルモード(許可)を変更するために使用されます。これは、ユーザーがファイルやディレクトリの許可を変更して、誰がそれらを読み取り、書き込み、実行できるかを制御することができるシンプルなツールです。

例えば、ファイル名がfile1.txtのファイルの所有者にファイルを読み書きする権限を与え、他のユーザーにはアクセスできないようにしたいとします。chmodコマンドを使用して、次のように行うことができます。

bash
$ chmod 600 file1.txt

これにより、file1.txtのファイルモードが600に設定され、所有者はファイルを読み書きできますが、他の全てのユーザーには許可がありません。

所有者と特定のグループにファイルへのアクセスを許可する場合は、次のコマンドを使用できます。

bash
$ chmod 640 file1.txt

これにより、file1.txtのファイルモードが640に設定され、所有者はファイルを読み書きできます。同じグループに属するユーザーはファイルを読むことができますが、他の全てのユーザーには許可がありません。

chmodコマンドを複数のファイルに一度に適用するか、ディレクトリやサブディレクトリで再帰的に許可を変更するためにも使用できます。

chown

Linuxのchownコマンドは、ファイルやディレクトリの所有者とグループを変更するために使用されます。これは、ユーザーがファイルやディレクトリの所有権を変更して、誰がそれらにアクセスできるかを制御することができるシンプルなツールです。

例えば、file1.txtという名前のファイルの所有者をaliceという名前のユーザーに変更したい場合は、chownコマンドを使用して次のように行うことができます。

bash
$ chown alice file1.txt

これにより、file1.txtの所有者がaliceに変更されます。グループも変更する場合は、次のコマンドを使用できます。

bash
$ chown alice:users file1.txt

これにより、file1.txtの所有者がaliceに、グループがusersに変更されます。

また、chownコマンドを使用して、一度に複数のファイルの所有権を変更するか、ディレクトリとサブディレクトリの所有権を再帰的に変更することもできます。

apt-get

Linuxのapt-getコマンドは、DebianとUbuntuベースのシステムでソフトウェアパッケージをインストール、更新、削除するためのパッケージ管理ユーティリティです。

例えば、UbuntuシステムにApache Webサーバーをインストールしたい場合は、次のようにapt-getコマンドを使用します。

bash
$ apt-get install apache2

これにより、Apache Webサーバーとその依存関係がダウンロードされ、インストールされます。

また、`apt-getコマンドを使用してシステムパッケージを更新することもできます。

bash
$ apt-get update

これにより、設定されたリポジトリから最新のパッケージ情報がダウンロードされます。

さらに、システムパッケージを最新バージョンにアップグレードする場合は、次のようにします。

bash
$ apt-get upgrade

これにより、システム上でインストールされた全てのパッケージが、設定されたリポジトリで利用可能な最新バージョンにアップグレードされます。

apt-getコマンドには、Linuxシステム上でソフトウェアを効果的に管理するために、多くの他のオプションと機能があります。

systemctl

Linuxのsystemctlコマンドは、systemdシステムおよびサービスマネージャを使用する現代のLinuxディストリビューションでシステムサービスおよびデーモンを管理するために使用されるシステムユーティリティです。

Linuxシステム上でApache Webサーバーを起動したい場合、systemctlコマンドを使用して次のように行います。

bash
$ systemctl start apache2

これにより、Apache Webサーバーサービスが開始されます。

systemctlコマンドを使用してサービスを停止することもできます。

bash
$ systemctl stop apache2

これにより、Apache Webサーバーサービスが停止されます。

また、サービスを再起動するには次のコマンドを使用します。

bash
$ systemctl restart apache2

これにより、Apache Webサーバーサービスが停止され、その後再開されます。

systemctlコマンドには、サービスの有効化や無効化、サービスの状態の確認、特定のサービスに関連するシステムログメッセージの検査など、システムサービスを効果的に管理するための多くのオプションと機能があります。

top

Linuxのtopコマンドは、CPU、メモリ、およびディスク使用状況を含む、システムリソース使用状況に関する情報を表示するシステムモニタリングユーティリティです。

ターミナルでtopコマンドを実行すると、システムリソースの使用状況、CPU、メモリ、およびディスク使用状況をリアルタイムで表示します。

bash
$ top

これにより、CPU使用率によってソートされたシステム上で実行中の全てのプロセスのリストが表示されます。 topコマンドには、プロセスリストを並べ替えたりフィルタリングしたり、更新間隔を変更したり、表示形式を調整したりするための様々なオプションとインタラクティブコマンドが用意されています。

topコマンドの便利な機能の1つは、画面の上部にシステムリソース使用状況のサマリーを表示できることです。このサマリーには、プロセスの総数、CPU使用率、メモリ使用量、およびスワップスペース使用量に関する情報が含まれます。

topコマンドには、出力形式をカスタマイズするオプションも提供されており、出力をファイルに保存したり、プロセスリストを特定の基準で並べ替えたりすることができます。

ps

Linuxのpsコマンドは、Linuxシステム上で実行中のプロセスに関する情報を表示するために使用されるユーティリティです。これは、PID(プロセスID)、CPU使用率、メモリ使用量、その他のシステムリソースを含め、全てのアクティブなプロセスの状態を表示することができる強力なツールです。

psコマンドを使用する方法の例を以下に示します。

bash
$ ps -ef

このコマンドは、PID、親プロセスID、CPU使用率、その他の情報を含め、Linuxシステム上で実行中の全てのプロセスのリストを表示します。 -efオプションは、全てのプロセスを詳細に、ツリーのような構造で表示するために使用されます。

psコマンドの別の便利なオプションは、-auxです。これにより、他のユーザーが所有するプロセスを含め、システム上で実行中の全てのプロセスのリストが表示されます。これは、システム管理者がリソースを消費しすぎたり、システムのパフォーマンスの問題を引き起こしているプロセスを特定する必要がある場合に役立ちます。

bash
$ ps -aux

psコマンドには、CPU使用率、メモリ使用量、プロセス名など、様々な基準に基づいてプロセスリストをフィルタリングおよびソートするオプションが用意されています。

bash
$ ps -ef --sort=-%cpu | head -n 10

このコマンドは、CPU使用率の降順にプロセスリストをソートし、もっとも高いCPU使用率を持つトップ10のプロセスを表示します。

kill

Linuxのkillコマンドは、実行中のプロセスを終了するために使用されるユーティリティです。

以下は、killコマンドの使用例です。

bash
$ kill 1234

このコマンドは、PIDが1234のプロセスに終了シグナルを送信し、プロセスを停止させます。

killコマンドの別の便利なオプションは、強制終了シグナルを送信して、プロセスを直ちに終了する「-9」です。

bash
$ kill -9 1234

killコマンドには、SIGTERM(終了シグナル)またはSIGKILL(強制終了シグナル)など、プロセスに送信するシグナルの種類を指定するオプションも用意されています。

bash
$ kill -SIGTERM 1234

このコマンドは、PIDが1234のプロセスにSIGTERMシグナルを送信し、プロセスを終了させます。

tar

Linuxのtarコマンドは、ファイルやディレクトリをアーカイブ化して圧縮するために使用されるツールです。tarコマンドは、アーカイブ化したい全てのファイルとディレクトリが含まれる単一のファイル、通常はtarボールを作成します。 tarコマンドは、gzipやbzip2などの異なるアルゴリズムでtarボールを圧縮することもできます。

以下は、ディレクトリのtarボールを作成するためにtarコマンドを使用する方法の例です。

bash
$ tar -cvf myfiles.tar mydirectory/

この例では、-cオプションは新しいアーカイブを作成するためにtarに指示し、-vオプションはアーカイブ化されているファイルとディレクトリの名前を表示するために使用され、-fオプションは作成するアーカイブファイルの名前を指定します。 myfiles.tarは作成されるtarボールの名前であり、mydirectory/はアーカイブ化したいディレクトリです。

tarボールが作成されたら、tarコマンドを-xオプションを使って使用して、その内容を抽出できます。

bash
$ tar -xvf myfiles.tar

この例では、-xオプションは、アーカイブの内容を抽出するためにtarに指示し、-fオプションは抽出するアーカイブファイルの名前を指定します。 myfiles.tarは抽出したいtarボールの名前です。

tarコマンドは、多くのオプションと機能を持つ強力なツールです。マニュアルページやオンラインリソースを読むことで、より多くの機能を探索できます。

grep

Linuxにおけるgrepコマンドは、ファイル内または他のコマンドの出力内の特定のテキストパターンを検索するために使用されます。大量のテキストを検索するための非常に強力なツールです。

以下は、ファイル内のパターンを検索するためにgrepコマンドを使用する例です。

bash
$ grep "pattern" filename.txt

この例では、patternはfilename.txtファイル内で検索したいテキスト文字列です。

grepコマンドは、他のコマンドからの出力やファイル内の特定のテキストパターンを検索するためにも使用できます。例えば、psコマンドを使用してシステム上で実行中の全てのプロセスをリストし、grepを使用して出力をフィルタリングして特定のキーワードを含むプロセスのみを表示することができます。

bash
$ ps aux | grep "keyword"

この例では、ps auxはシステム上で実行中の全てのプロセスをリストし、|(パイプ)記号は、psコマンドの出力をgrepコマンドに送信するために使用されます。keywordは、psコマンドの出力内で検索したいテキスト文字列です。

grepコマンドには様々なオプションがあり、正規表現を使用してパターンを検索するなど、より高度な検索操作に使用することができます。

sed

sedコマンドは、Linuxでテキストを操作するために使用されます。これは、入力ストリーム(ファイルまたは他のコマンドの出力)のテキスト変換を実行してから出力するストリームエディターです。

この例では、ファイル内の特定のテキスト文字列を置換するためにsedコマンドを使用する方法を示します。

bash
$ sed 's/old_string/new_string/' filename.txt

この例では、old_stringは置換したいテキスト文字列であり、new_stringはそれを置換するテキスト文字列です。 filename.txtは、置換を実行するファイルです。

sedコマンドは、特定の行をファイルから削除するためにも使用できます。

bash
$ sed '3d' filename.txt

この例では、3dコマンドは、filename.txtの3行目を削除するようsedに指示します。

sedコマンドは、正規表現をサポートしており、より複雑なテキスト変換を行うために使用できます。

awk

awkコマンドは、Linuxでのテキスト処理とデータ抽出に使用される多目的なツールです。ファイルまたは他のコマンドの出力からデータを読み取り、パターンに基づいて操作を実行します。

以下は、awkコマンドを使用してファイルの最初の列を表示する方法の例です。

bash
$ awk '{print $1}' filename.txt

この例では、$1はファイルの最初の列を表します。awkコマンドは、ファイルの各行を読み取り、最初の列を表示します。

awkコマンドは、データの列に対して算術演算を実行するためにも使用できます。

bash
$ awk '{total += $3} END {print total}' filename.txt

この例では、awkコマンドは、filename.txtの3列目を読み取り、全ての値を合計します。最後に、合計値が表示されます。

awkコマンドは、正規表現もサポートしており、データ内の特定のパターンを検索して操作するために使用できます。

curl

curlコマンドは、LinuxでデータをHTTP、FTP、SMTPなどの様々なプロトコルを使用してサーバーに転送するために使用される人気のあるツールです。このコマンドは、ユーザーがコマンドラインインターフェイスを通じてサーバーにリクエストを送信し、レスポンスを受信することを可能にします。

以下は、ウェブサイトのHTMLコンテンツを取得するためにcurlコマンドを使用する方法の例です。

bash
$ curl https://www.example.com

この例では、curlコマンドはhttps://www.example.comにHTTP GETリクエストを送信するために使用されます。サーバーは、WebサイトのHTMLコンテンツで応答し、ターミナルに表示されます。

curlコマンドは、フォームの提出など、サーバーにデータを送信するためにも使用できます。

bash
$ curl -d "username=john&password=secret" https://www.example.com/login

この例では、-dフラグを使用して、キーと値のペアの形式でサーバーに送信するデータを指定します。curlコマンドは、指定されたデータを含むPOSTリクエストをhttps://www.example.com/loginに送信します。サーバーはそのデータを処理し、新しいページを返したり、リクエストの成功または失敗を示すメッセージを返します。

wget

wgetコマンドは、インターネットからファイルをダウンロードするために広く使用されているLinuxコマンドです。HTTP、HTTPS、FTPなどの様々なプロトコルをサポートしています。 wgetを使用すると、単一のファイル、複数のファイル、またはディレクトリ全体をダウンロードできます。

単一のファイルをダウンロードするには、単にダウンロードしたいファイルのURLを指定するだけです。例えば、ウェブサイトからexample.zipという名前のファイルをダウンロードするには、次のコマンドを使用します。

bash
$ wget http://example.com/example.zip

複数のファイルまたはディレクトリ内の全てのファイルをダウンロードするには、-rオプションを使用できます。例えば、ウェブサイトからdocsという名前のディレクトリ内の全てのファイルをダウンロードするには、次のコマンドを使用します。

bash
$ wget -r http://example.com/docs/

また、-Pオプションを使用して、ダウンロードしたファイルを保存するディレクトリを指定できます。例えば、docsという名前のディレクトリ内の全てのファイルをダウンロードして、それらをmy-docsという名前のディレクトリに保存するには、次のコマンドを使用します。

bash
$ wget -r -P my-docs http://example.com/docs/

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!