8
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Linuxコマンド まとめ

Posted at

目次

~基本コマンド~
- ls コマンド   ディレクトリの中身を確認したい!
- pwd コマンド  パスを確認したい!
- cd コマンド  移動したい!
- mkdirコマンド  ディレクトリ作りたい!
- cp コマンド  コピーしたい!
- mv コマンド  移動させたい!
- rm コマンド  削除したい!
- cat コマンド  ファイルの中身を確認したい!
- vi コマンド  viエディタ使いたい!

~実践的コマンド~
- diff コマンド  差分を確認したい!
- grep コマンド  ファイルの中身のキーワードでファイルを見つけたい!
- pgrep コマンド  プロセスIDを見つけたい!
- find コマンド  ディレクトリ・ファイルを見つけたい!
- locate コマンド  ディレクトリ・ファイルを見つけたい!
- touch コマンド  タイムスタンプ編集したい!
- shutdown コマンド  システムの終了・再起動をしたい!
- kill killall コマンド  実行中プロセスを停止させたい!
- history コマンド  コマンドの履歴確認したい!
- ifconfig コマンド  ネットワーク確認したい!
- ping コマンド  ネットワーク経路を確認したい!
- netstat コマンド  TCP/IPの状態を確認したい!
- curl コマンド  ファイルを転送したい!
- more コマンド  ファイルの内容を見やすく表示したい!
- tail コマンド  ファイルの中身の最後を確認したい!
- head コマンド  ファイルの中身の最初を確認したい!
- ps コマンド  実行中プロセスを確認したい!
- jobs bg fg コマンド  実行中ジョブを操作したい!
- virsh コマンド  仮想マシンを管理したい!
- systemctl  systemdのサービスを管理したい!
- 参考サイト  他のコマンドを探したい!

ls コマンド

ファイルやディレクトリの情報を確認するコマンド。

<主な使い方>

  • ls :カレントディレクトリ(現在作業中のディレクトリ)の中身を確認できる。
  • ls [ファイル名orディレクトリ名] :[ファイル名orディレクトリ名]の中身を確認できる。
                    例) ls ./dir1/sample.txt ※「./」はカレントディレクトリ
  • ls -l :カレントディレクトリの中身を詳細に確認できる。

<書式>

ls [オプション] [ファイル名orディレクトリ名]  

<主なオプション>

オプション 説明
-a ファイルの先頭にピリオドがついたファイルも含めてすべて中身を表示指せる。
※先頭にピリオドがついたファイル=普段簡単には編集されたくない設定ファイル等のこと。
-d ディレクトリの中身ではなく、ディレクトリ自身の情報を表示する。
-l ファイルの詳細(アクセス権や作成日等)も表示する。「-a」オプションと組み合わせて「-la」のように使用することも多い。
-1 縦に並べて表示できる。
-r 逆順に表示できる。
-t 更新時間順に並べて表示できる。
-S ファイルサイズが大きい順に並べて表示できる。「-lS」のように使うとわかりやすい。軽い順だと「-lSr」となる。
-X 拡張子ごとに表示できる。「-l」と使うときは「-Xl」。
-R サブディレクトリの中身も同時に並べて表示できる。
-m ファイル名をカンマで区切って表示できる。

<リンク>

lsコマンドの使い方と覚えたい15のオプション【Linuxコマンド集】|エンジニアの入口


pwd コマンド

カレントディレクトリのパス(絶対パス)を確認するコマンド。


cd コマンド

指定したディレクトリに移動するコマンド。

<書式>

cd [ディレクトリのパス(絶対パスor相対パス)]

<パスで使用する表現>

  • ~ (チルダ):ホームディレクトリを意味する。 例)~/dir1
  • . :カレントディレクトリを意味する。 例)./dir2
  • .. :親ディレクトリを意味する。 例)../dir3

mkdirコマンド

空のディレクトリを作成するコマンド。

<書式>

mkdir [オプション] ディレクトリ名

<主なオプション>

オプション 説明
-p 親ディレクトリも同時に作成できる。 例)mkdir -p dir1/dir2/dir3

cp コマンド

ファイルやディレクトリをコピーするコマンド。

<書式>

cp [オプション] [コピー元(コピーする対象)] [コピー先]

例)cp (カレントディレクトリにある)sample.txt ./dir1

※ディレクトリをコピーする時は、「-r」「-R」がいる!!!

<主なオプション>

オプション 説明
-p コピー元ファイルの属性(所有者、アクセス権、タイムスタンプ等)を保持したままコピーする。
-r, -R ディレクトリをコピーする。

<ワイルドカード>

あいまいな文字列やファイルの場合、ワイルドカードの使用が可能。

ワイルドカード 意味
* 任意の文字列(0文字以上)
? 任意の1文字
[] []に含まれている文字の中のどれか1文字
[!] []に含まれてない1文字
~ ユーザーのホームディレクトリの絶対パス

使用例:「UNIXのワイルドカード」


mv コマンド

ファイルやディレクトリを移動させるコマンド。
ファイル名の変更にも用いられる。

<書式>

mv [オプション] 移動元(移動させるファイル) 移動先

<使用例>

  • mv ./sample.txt ./dir3 →sample.txtをdir3に移動
  • mv ./sample1.txt sample3.txt →sample.txtの名前をsample3.txtに変更

<主なオプション>

オプション 説明
-f 移動先に同名のファイルがあれば上書きする

rm コマンド

ファイルやディレクトリを削除するコマンド。

<書式>

rm [オプション] ファイル名

<主なオプション>

オプション 説明
-f ユーザーへの確認なしに削除する
-r、-R サブディレクトリも含め、ディレクトリ全体を削除する

※ファイルもディレクトリもまとめて消したいとき・・・ 「 rm -r * 」


cat コマンド

ファイルの内容を表示するコマンド。

<書式>

cat [オプション] ファイル名

<主なオプション>

オプション 説明
-n 内容に行番号を付ける
-b 空白は飛ばして行番号を付ける
-s 連続した空白行を1行の空白にまとめる

<リンク>

【Linuxコマンド集】3分でわかるcatコマンドの使い方|エンジニアの入口


vi コマンド

viエディタでファイルを編集するコマンド。

<使用例>

  • vi 既存のファイル名 →既存のファイルを編集する
  • vi 存在しないファイル名 →指定した名前の新規ファイルを作成し編集する

diff コマンド

ファイルの内容を比較して、差異を表示するコマンド。

<書式>

diff ファイル名 ファイル名

<主なオプション>

オプション 説明
-s ファイルが異なるかのみチェックする
-q ファイルが異なるかのみチェックし、同一の場合は結果を出力しない
-c 結果を※コンテキスト形式で表示する
-C 結果をコンテキスト形式で表示する+表示する行数を指定できる
例)diff -C 行数 ファイル名 ファイル名
-u 結果を※ユニファイド形式で表示する
-y 比較した結果を横並びで表示する
-r ディレクトリ同士で比較する

※コンテキスト形式・・・1つ目のファイルと2つ目のファイルを分けて表示する
※ユニファイド形式・・・1つ目のファイルと2つ目のファイルを一緒に(1行ごと交互に)表示する

<リンク>

【diff】コマンド(基本編)―テキストファイルの差分を出力する
ファイルの差分を見る!diffコマンドの詳細とまとめ【Linuxコマンド集】|エンジニアの入口


grep コマンド

文字列で検索したファイルの内容を表示するコマンド

<書式>

grep [オプション] 文字列 ファイル名

<使用例>

grep [オプションなし] TEST /etc/hosts →hostsというファイルの中で「TEST」を含む行を表示する

<主なオプション>

オプション 説明
-c マッチした行数を表示する
-i 大文字小文字を区別しない
-n マッチした文字列の行番号を表示する
-v マッチしない行を表示する
-r ディレクトリ内も検索対象とする
 例)grep -r a work/*→workディレクトリの下層ディレクトリ内のすべてのファイルの中から「a」を検索する
-L 検索した結果、該当しなかったファイルを表示する

<リンク>

grepコマンドの詳細をまとめました【Linuxコマンド集】|エンジニアの入口


pgrep コマンド

実行中プロセスの中から、プロセス名やユーザー名を基に特定ののプロセスIDを探すコマンド。
psコマンドでもPID及びプロセス名の検索は可能。

<書式>

pgrep [オプション] 検索パターン(オプションによる・正規表現もあり)  

<主なオプション>

オプション 説明
なし 検索パターンに「プロセス名」を置き、プロセス名から検索する
-u 検索パターンに「ユーザー名」と「プロセス名」を置き、ユーザー名から検索する
-t 検索パターンに「端末名」と「プロセス名(「".*"」ですべてのプログラムの意味)」を置き、端末から検索する
-l 同時にプロセス名も表示させる
-a 同時にコマンドラインも表示させる
※ユーザー名や端末名が複数ある場合は「,」で区切る

<リンク>

【pgrep】コマンド―プロセス名や属性からプロセスIDを探す|@IT


find コマンド

ファイルやディレクトリを検索するコマンド。
検索するファイルがない場合はエラーとなる。

<主なオプション>

オプション 説明
-name ワイルドカードを使用して、ファイルやディレクトリ名の一部のみ指定した検索ができる
例)find 検索先 -name ファイル名(¥+ワイルドカード使用可)
-atime 任意の日数にアクセスされたファイルやディレクトリを検索する
例)find 検索先 -atime 日数
※今日が0、昨日が1、n日以内は-n
-mtime 任意の日数に更新されたファイルやディレクトリを検索する
-empty ファイル容量が0のファイルやディレクトリを対象とし検索する
例)find 検索先 -empty
-size ファイルの容量を指定し検索する
例)find 検索先 -size ファイル容量(6byte以下なら、-6cと記述する)
-type f or d 「f」なら、ファイルのみを対象として、「d」ならディレクトリを対象として検索する
例)find ファイル名(もしくはディレクトリ名) -type f(もしくはd)
-perm パーミッションで検索する
例)find 検索先 -perm -対象者=アクセス権(もしくは、664等)
-and 複数の条件を使って、すべての条件に当てはまるファイルやディレクトリを検索する
例)find 検索先 条件1(-name ¥) -and 条件2(-perm 664)
-or 複数の条件を使って、いずれかの条件に当てはまるファイルやディレクトリを検索する
-not 条件に当てはまらないファイルやディレクトリを検索する
例)find 検索先 -not 条件

<リンク>

ファイルなどを検索する!findコマンドの詳細まとめ【Linuxコマンド集】|エンジニアの入口


locate コマンド

ファイルやディレクトリを高速検索するコマンド。
※locateコマンドはデータベースの中から検索するため高速。
※findコマンドと違い、ユーザーや容量での検索はできない。(名前のみ)

<書式>

find キーワード(.csvとか)

※直前に作成したファイルを検索する場合、updatedbコマンド実行
※ファイルのデータベースは、システム起動時等定期的に自動で更新される

<主なオプション>

オプション 説明
-c 検索された数を表示する
-i 大文字小文字を区別しない
-l 検索結果を指定した数まで表示する
-0 検索結果を改行しない
-r 正規表現で検索する

<リンク>

locateコマンドについて詳しくまとめました 【Linuxコマンド集】|エンジニアの入口


touch コマンド

ファイルのタイムスタンプ(アクセス時刻と修正時刻)を、現在時刻か、指定した日時に変更するコマンド。
※引数に存在しないファイル名を指定すると、空のファイルを作成する。

<使用例>

  • touch 既存のファイル →指定したファイルのタイムスタンプを現在時刻に変更する
  • touch 存在しないファイル →空の新規ファイルを作成する

<主なオプション>

オプション 説明
-d 日時を指定する
例)touch -d "2021-05-25 20:30" ファイル名
-c ファイルを新規作成しない
-r 他のファイルのタイムスタンプに合わせる
例)touch -r 既存のファイル名 対象のファイル名

<リンク>

touchコマンドについて詳しくまとめました 【Linuxコマンド集】|エンジニアの入口


shutdown コマンド

システム状で動作している様々なプログラムを適切に終了・再起動させるコマンド。
※管理ユーザーのみ使用可能。

<書式>

shutdown [オプション] 時間  

※時間の書き方・・・

  • HH:MM :HH時MM分に実行
  • +M :M分後に実行
  • now :今すぐ実行

<主なオプション>

オプション 説明
-h シャットダウンする(デフォルト)
-r 再起動する ※=rebootコマンド
-c 実行中のシャットダウンをキャンセルする

kill killall コマンド

実行中のプロセスを(強制)終了するコマンド。

<書式>

kill [-s] [‐シグナル名または‐シグナル番号] PID(プロセスID)  
killall [-s] [‐シグナル名または‐シグナル番号] プロセス名(コマンド名)  

※ pkill [--signal] [‐シグナル名または‐シグナル番号] プロセス名(コマンド名)も同じ
※killコマンドはPIDを使用して単一のプロセスにシグナルを送るが、
 killallコマンドはプロセス名を使用して同じプロセス名のすべてのプロセスにシグナルを送る

<シグナルの種類>

※シグナル=プロセスに送るメッセージみたいなもの

シグナル名 シグナル番号 動作
HUP(SIGHUP) 1 ハングアップ(端末の切断による終了)
INT(SIGINT) 2 割り込みによる終了 ※ctrl+Cと同じ
KILL(SIGKILL) 9 クリーンアップせずに終了(強制終了)
TERM(SIGTEARM) 15 クリーンアップして終了(デフォルト)
CONT(SIGCONT) 18(環境依存) 一時停止のプロセスを再開
STOP(SIGSTOP) 19(環境依存) 一時停止
TSTP(SIGTSTP) 20(環境依存) 端末から入力された一時停止 ※ctrl+Zと同じ

<おまけ>

以下のコマンドはすべて同じ動作をする。
例)mycommandを実行しているすべてのプロセスをクリーンアップして終了

  • pkill mycommand
  • killall mycommand
  • killall -15 mycommand
  • killall -TERM mycommand
  • killall SIGTERM mycommand
  • killall -s 15 mycommand
  • killall -s TERM mycommand
  • killall -s SIGTERM mycommand

<リンク>

Linux-Job/bg/fg/kill←ジョブの説明
プロセスを終了するkillコマンドの使い方まとめ!【Linuxコマンド集】


history コマンド

コマンドの実行履歴を表示するコマンド。

<主なオプション>

オプション 説明
-c コマンドの実行履歴を削除する

ifconfig コマンド

ネットワークの接続状況(主にIPアドレス)を確認するコマンド。
※「ifconfig」のみの場合、有効な(アクティブ)ネットワーク(インターフェース)の状態を表示する。
※アダプタ(eth0等)を指定する場合は「ifconfig アダプタ名」となる。

<各種設定の書式>

  • アダプタの無効化: ifconfig アダプタ名 down
  • アダプタの有効化: ifconfig アダプタ名 up
  • IPアドレスの設定: ifconfig アダプタ名 IPアドレス

<主なオプション>

オプション 説明
-a すべてのアダプタを表示する(無効なアダプタも含む)
-s 各アダプタの(エラーパケット等の)通信状況を表示する

<リンク>

ifconfigコマンドの詳細まとめました【Linuxコマンド集】|エンジニアの入口


ping コマンド

ネットワーク上にあるコンピューターまでの接続経路がきちんと接続されているか確認するコマンド。
ctrl+Cで強制的に停止できる。

表示結果)
64bytes from 192.168.179.10: icmp_rep=1 ttl=64 time=12.3 ms

  • 64bytes:パケットデータサイズ(導通試験のために送信したデータのバイト数)
  • from 192.168.179.10:接続確認先のIPアドレス
  • icmp_req:導通試験の回数(厳密にはICMPパケットデータの何番目のデータかを表している)
  • ttl:Time To Live=寿命(有効期限) 機器を一つ経由する毎に数字を1減らす
  • time:パケットデータを発してから、相手からのリアクションが戻ってくるまでの時間(通信速度) ←大きな値が出ても数回のうちに安定すれば問題なし

<主なオプション>

オプション 説明
-c pingの回数を設定する
 例)ping -c 回数 接続先
-i pingの間隔を設定する
-p pingの試験するパケット内容を設定する
 例)ping -p 5A5A5A5A 接続先
-a pingの試験するパケットサイズを設定する
-t pingの試験するTTLの数を設定する

<注意点>

  • 物理的接続の確認なのでLANケーブルのコネクタがしっかり接続されているか確認すべし
  • 無線LANは先にifconfigで接続確認すべし
    などなど・・・

<リンク>

pingコマンドについて詳しくまとめました【Linuxコマンド集】|エンジニアの入口


netstat コマンド

TCP/IP通信(TCP接続)の状態を調べるコマンド。
オプションなしだとソケット(ネットワークアドレス)を表示する。

<リンク>

コマンドの説明:TCP/IP通信の状態を調べる「netstat」コマンドを使いこなす|@IT
オプション一覧:netstatコマンドとは?


curl コマンド

様々なプロトコルでファイルをダウンロード・アップロード(転送)するコマンド。

<書式>

curl [オプション] URL

<主な使い方>

<主なオプション>

オプション 説明
-L リダイレクトがあったらリダイレクト先の情報を取る
-s 余計な出力をしない
-o レスポンスボディの出力先を指定する

<リンク>

よく使うcurlコマンドのオプション|Qiita
curlコマンドの使い方メモ ←難しいけどLGTMが多い


more コマンド

テキストファイルを1画面ずつ表示するコマンド。

<主な使い方>

  • more ファイル名 →指定したファイルを1画面ずつ表示する
  • コマンド|more →他のコマンドの実行結果を1画面ずつ表示する

<主なオプション>

オプション 説明
-数字 画面の行数を指定する
+数字 数字で指定した行から表示する
+/文字列 指定した文字列を検索して、見つけた行の2行上から表示する
-s 連続した空行を1行にする
-l 改ページを無視する
-u 下線の処理を行わない
-f 画面の行数ではなく、データの行数を表示する

<リンク>

【more】コマンド―長いメッセージやテキストファイルを1画面ずつ表示する|@IT
more【コマンド】|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典


tail コマンド

ファイルの最終行から数行(指定がなければ10行)を表示するコマンド。
※ログファイルにログが追記されていく様子をリアルタイムで見るために使ったりする。

<主な使い方>

  • tail [オプション] ファイル名
  • コマンド|tail [オプション] →ほかのコマンドで指定したファイルの最終行数行を表示する

<主なオプション>

オプション 説明
-c 出力する文字数を指定する ※文字数は半角1文字で1、全角1文字で2
-n 出力する行数を指定する
-q ファイル名を表示しない
-v ファイル名を常に表示する
-f ファイルの追記を監視する ※終了はctrl+C

<リンク>

tailコマンドについて詳しくまとめました 【Linuxコマンド集】|エンジニアの入口


head コマンド

ファイルの最初の数行(指定がなければ10行)を表示するコマンド。

<主な使い方>

  • head [オプション] ファイル名
  • コマンド|head [オプション]

<主なオプション>

オプション 説明
-c 出力する文字数を指定する
-n 出力する行数を指定する
-q ファイル名を表示しない
-v ファイル名を常に表示する

<リンク>

ファイルの先頭から表示するheadコマンドの詳細まとめ【Linuxコマンド集】|エンジニアの入口


ps コマンド

実行中のプロセスを確認するコマンド。

<主な使い方>

  • ps (オプションなし):psコマンドを実行した端末で実行されているプロセスを表示する。
  • ps ax(aux):システム実行されているすべてのプロセスを表示する。(uでユーザー情報も追加する場合もある。)

<主なオプション>

オプション 説明
a 他のユーザーのプロセスも表示する
(xオプションと併用ですべてのプロセス表示)
f プロセスの親子関係をツリー状で表示する
(表示形式は異なるがpstreeコマンドでも表示できる)
u プロセス実行ユーザー名と開始時刻も表示する
x 制御端末のないデーモン(常に稼働している?プログラム)等のプロセスも表示する
-e すべてのプロセスを表示する
-f 完全なフォーマットでプロセスを表示する
-p/p/PID 指定したPID(プロセスID)のプロセス情報を表示する
-l/l 親プロセスのPID(PPID)や実行優先度を決定するnice値(NI)等も伴わせて表示する

※「-」を付けないBSDオプションと、「‐」で始まるUNIXオプションがある

<ps ax(aux)で出力されるラベルの意味>

項目 説明
USER プロセスを実行しているユーザー名
PID プロセスID
%CPU CPU使用率
%MEM メモリ使用率
VSZ 割り当て済みの仮想アドレス空間サイズ
RSS 物理メモリ使用量(%MEMに比例)
TTY プロセスを実行した端末
STAT プロセスの状態 ※1
START プロセスの起動時刻
TIME 消費したCPU使用時間
COMMAND 実行コマンドまたはプログラム名

<STATの代表的な状態>

STATの一文字目 意味
D スリープ(CPU放棄)、割り込み不可の状態:I/O待ち
R 実行可能(CPU使用中、使用可能)
S スリープ(CPU放棄)、割り込み可能な状態:キー入力待ち
T 停止状態
Z プロセス終了済み状態:ただし、親プロセスの処理待ち

<リンク>

【ps】実行中のプロセスを表示する|日経XTECH
プロセスの監視|Linux‐Process


jobs bg fg コマンド

  • jobs:バックグラウンドで動作中&一時停止中ジョブを確認するコマンド。
  • bg:一時停止中のジョブをバックグラウンドで実行状態にするコマンド。
  • fg:バックグラウンドで動作中または一時停止中のジョブを、フォアグラウンド動作に切り替えるコマンド。

<jobsコマンドの見方>

例) $ jobs  
   [1]― Running ~  
   [2]+ Stopped ~  
  • []内の数字はジョブ番号
  • 「Running」はバックグランドで動作中、「Stopped」は一時停止中
  • 「+」はカレントジョブ(直前にバックグランドで実行された、または直前に一時停止中されたジョブのこと)

<書式>

bg ジョブ番号  
fg ジョブ番号  

※「ジョブ番号」はjobsコマンドで確認。  

<リンク>

Linux-Job/bg/fg/kill
実行中のプログラムをバックグラウンドにもっていく。フォアグラウンドに持ってくる(bg、fg)


virsh コマンド

仮想化ソフトウェアと仮想マシンを管理するコマンド。

<主なサブコマンド>

サブコマンド 説明
create XML形式のファイルから仮想マシンを作成し、新規の仮想マシンを起動する
console 仮想マシンのコンソールに接続する
start 仮想マシンを起動する
shutdown 仮想マシンを正常に終了する
destroy 仮想マシンを強制終了する
reboot 仮想マシンを再起動する
suspend 仮想マシンを一時停止する
resume 仮想マシンを再開する
list 仮想マシンの一覧を表示(デフォルト:稼働中のみ)
※--all:すべての仮想マシンを表示
dumpxml 仮想マシンの定義ファイルをXML形式で出力

<仮想マシンの起動(準備含む)>

  1. 仮想マシンの定義ファイルをXML形式に変換する > virsh dumpxml 定義ファイル名 > /etc/xen/定義ファイル名.xml
  2. XML形式の定義ファイルから仮想マシンを起動する > virsh create /etc/xen/定義ファイル名.xml

<リンク>

第4回:virshコマンドで仮想かを管理する!(1/3)|ThinkIT


systemctl コマンド

systemdが管理する各サービスの稼働状況や起動設定を管理するコマンド。
※systemdとは、SysVinitを置き換える新しいinitの仕組み。

<書式>

systemctl サブコマンド [Unit名]  

※Unit名に拡張子がない場合、「.service」を持つUnitが指定されたものとみなされる。

<主なサブコマンド>

サブコマンド 用途
disable サービスの自動機能を無効にする
eneble サービスの自動機能を有効にする
get-default 次回起動時のターゲットを表示する
is-active サービスが稼働しているかを表示する
isolate 他のUnitを停止して対象のUnitを起動する
list-util-files すべてのUnit定義ファイルを一覧表示する
reload サービスの設定ファイルを再読み込みする
restart サービスを再起動する
set-default 次回起動時のターゲットを設定する
start サービスを起動する
atatus サービスの状態を表示する
stop サービスを停止する

<リンク>

systemctlコマンドの使い方と主要オプション


参考サイト

【Linuxコマンド集】Linuxコマンド詳細含めて総まとめ|エンジニアの入口
コマンドの使い方(Linux)

8
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
6

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?