Help us understand the problem. What is going on with this article?

Linux コマンド ~リファレンス~

More than 1 year has passed since last update.

Linuxコマンド

便利な各種コマンドをリマインダ。

業務で使用する際に便利だなーと感じたものを逐次追記する。

自分用にこれ見ておけばなんとかなる。みたいなものが欲しかっただけです。
個人用リマインダなのでたどり着いてしまった人すみません

コマンド一覧

現在まとめおわっているレコード末尾に*をつける

コンソール関連

コマンド 概要
cd ワーキングディレクトリ変更
pwd 現在のワーキングディレクトリの絶対パス表示
which 実行コマンドのbin(実体)の絶対パス表示
w 現在システムにログインしているユーザを表示
clear コンソールログをまっさらにする
history コマンド実行履歴を表示
man コマンドのマニュアル表示
yum yum(パッケージ管理ツール)のあれこれ
head コマンド結果出力を何行表示するか指定

監視関連

コマンド 概要
top システム全体の情報(大抵見れる)
ps 動作中プロセス一覧取得
pstree プロセスの親子関係が可視化できる版psコマンド
uptime ロードアベレージを表示
df ファイルシステムのディスク使用量を表示
du ファイル/ディレクトリのディスク使用量を表示
free 物理メモリ/スワップの使用量と空きを表示
lsof 特定のファイルを開いているプロセスを特定
ss 接続待ちのポートを調べる
tcpdump ネットワーク通信の生のデータ(パケットとか)を取得

ファイル/ディレクトリ操作関連

コマンド 概要
mkdir ディレクトリ作成
touch ファイル作成
mv ファイル/ディレクトリ移動
rm ファイル/ディレクトリ削除
rmdir 空のディレクトリ削除
cp ファイル/ディレクトリコピー
chmod ファイル/ディレクトリのアクセス権限(パーミッション)を変更
chown ファイル/ディレクトリのオーナーやグループの変更
ln ファイル/ディレクトリのリンク作成
scp scp通信でリモートサーバにファイル/ディレクトリ転送

ファイル/ディレクトリ検索関連

コマンド 概要
ls ディレクトリ内のファイル/ディレクトリ一覧取得
cat (連結可能な)ファイル内容表示
less (編集可能な)ファイル内容表示
find ファイル検索
grep 文字列検索
diff 2ファイルの差分表示
tail ファイルの末尾指定行を表示
tailf ファイルの末尾10行をリアルタイム表示
more ファイルをページ単位で閲覧
行数の多いファイルで便利

各種コマンド詳細

※上記のテーブルの順序が変わっても順序に不整合が起きないよう、以下はアルファベット順で記載する

※オプションはある程度使用頻度が高いものをリストアップしている

全量が見たい場合はman [コマンド名]やネットなどで確認


cd

change directory

概要

ワーキングディレクトリを変更するためのコマンド。

オプションを使って実行する機会は少ない。

オプション

オプション 機能
-L 移動先がシンボリックリンクだった場合シンボリックリンクに移動する
-P 移動先がシンボリックリンクだった場合シンボリックリンクのターゲット(作成元)に移動する

Sample Code

入力パターン

# ルートディレクトリに移動
$ cd /

# 絶対パスで移動
$ cd /var/log/

# 相対パスで移動
$ ./var/

# ひとつ前のディレクトリに移動
# ../

コマンド一覧に戻る


clear

概要

コンソール出力を消去する

Ctrl + lでclearコマンドと同様の操作ができる。

Sample Code

$ clear

コマンド一覧に戻る


head

概要

出力結果を頭から何行分表示するかを制御するコマンド

膨大なサイズのログファイルをcatしたり、

大量のファイルのあるディレクトリをlsしたり、

なんて時にすべて表示してしまうと非常に見づらくなるのでそれを制御するために使う。

オプション

オプション 機能
-n 行数指定
-q ファイル名を表示しない
-v ファイル名を常に表示する

Sample Code

# /var/log ディレクトリの内、容量食ってるランキング
$ ls -lSh | head -n 10

コマンド一覧に戻る


history

概要

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

オプション

オプション 機能
整数値 履歴の末尾指定行を表示
-c 履歴を全削除
-d [番号] 指定した番号の履歴削除
-a 履歴ファイルに現在セッションの履歴を追加
-n 履歴ファイルからまだ読み込まれていない行もすべて読み込む
-r [ファイル] 履歴ファイルを読み込み、内容を履歴一覧に追加
-w [ファイル] 現在の履歴を履歴ファイルに上書き

Sample Code

参照

# 10行抽出
$ history 10

削除

# 履歴全削除
$ history -c

# 10番の履歴のみ削除
$ history -d 10

コマンド一覧に戻る


man

概要

コマンドのマニュアルを表示する

デフォルトではマニュアルはlessコマンドを使用して表示する。

マニュアルにはセクション番号が割り当てられていて、番号を指定するとその種類のマニュアルを表示できる。

指定しない場合は一番若い(小さい)番号のマニュアルが表示される。

基本的には$ man [コマンド名]くらいしか使わない(はず)

セクション番号

番号 項目 詳細
1 Linuxコマンド 基本的なLinuxコマンド
2 システムコール カーネル関数
3 ライブラリコール 表示関数や算術関数など
4 スペシャルファイル デバイス入出力に関するファイル
5 ファイルのフォーマット /etc内にある設定ファイルのフォーマットなど
6 ゲーム/デモ 多分使わない
7 マクロ 起動シーケンスなど
8 システム管理コマンド 管理権限コマンドなど
9 カーネルルーチン 非標準

オプション

オプション 機能
-a 対象マニュアルを全表示
-d デバッグ情報を表示
-k マニュアル検索をする
-K マニュアル説明文の検索をする
-P ページャーを指定する
-C 表示設定用ファイルを指定する

Sample Code

# gitコマンドのマニュアル
$ man git

# grepコマンドのマニュアル
$ man grep

コマンド一覧に戻る


ps

概要

動作中のプロセスを表示するコマンド

topコマンドとコマンド実行時の状態を出力する。(継続監視はしない)

オプション

オプション 機能
-A 全プロセス表示
a 端末操作のプロセス表示
x 端末操作以外のプロセス表示
r 現在実行しているプロセスを表示
※アイドル状態のプロセスを除く
c 実行しているコマンド名を表示
e 実行しているコマンド名と環境変数を表示
u CPUやメモリ使用率も表示
h 項目名非表示
l プロセスの状態も表示
f プロセスを階層表示
o 指定したリスト順で表示
-C 実行しているプロセスやプログラム名を指定
-u 実行しているユーザを指定
-g プロセス実行しているグループを指定
-p プロセスIDで指定

Sample Code

# 実行中プロセスのCPUやメモリの使用率を調べる
$ ps axu

# 上記でプロセス名までわかっている場合
$ ps axu | grep "[a]uditd"

# 特定のプロセスの起動時間を調べる
$ ps -e | grep [プロセス名]

コマンド一覧に戻る


pstree

概要

現在動作中のプロセスをツリー形式で表示するコマンド。

httpdみたいなアクセスしてくるユーザが増えるごとに子プロセスを生成するようなプロセスの場合に親子関係をわかりやすく表示できる。

オプション

オプション 機能
-a コマンドライン引数も表示
-p プロセスIDを表示
-l 長い行で表示
-s [PID] 指定したプロセスの親を表示
-h カレントプロセスとその先祖プロセス強調表示
-H [PID] 指定したプロセスとその先祖プロセス強調表示
-A ASCII文字で表示
※見易さの好みの問題
-U UTF-8の罫線文字で表示
※見易さの好みの問題
[ユーザ名] 指定したユーザが実行しているプロセスを表示

Sample Code

rootユーザのプロセスを表示

$ pstree root

(非推奨)すべてのプロセスの親子関係表示

量がすごいためお勧めはしない。

moreコマンドと併用する。

$ pstree -U | more

コマンド一覧に戻る


pwd

print working directory

概要

現在のワーキングディレクトリの絶対パスを表示するコマンド。

オプション

オプション 機能
-L シンボリックリンクをそのまま表示
-P シンボリックリンクの作成元のパスを表示

Sample Code

$ pwd

コマンド一覧に戻る


top

概要

現在実行中のプロセスをリアルタイムで監視するコマンド

qを入力すると監視が終了する

オプション

オプション 機能
-d [秒.ミリ秒] 監視間隔指定
-n [回数] 監視回数
-b バッチモードでキー操作を受け付けず、キルされるまで続く
-u [ユーザ名] 指定したユーザが実行しているプロセスのみ監視
-p [プロセスID] 指定したプロセスIDのプロセスのみ監視
-c プログラム名/コマンドラインの表示切替
※実行中はcで切り替え可能
-i アイドル状態のプロセスの表示切替
※実行中はiで切り替え可能
-o [項目] ソートする項目を指定(デフォルトは%CPU)

Sample Code

# rootユーザの実行プロセス監視
$ top -u root

# メモリ使用率順に表示
$ top -o %MEM

# PID[1234]と[5643]のプロセスを監視
$ top -p 1234,5643

コマンド一覧に戻る


uptime

概要

Linuxの稼働時間を調べるコマンド。

システムの負荷を調べるためにロードアベレージを確認する用途で使用することが多い(多分)。

オプション

オプション 機能
-s システムを起動した日時を表示
-p 経過時間のフォーマット変更

Sample Code

基本構文

$ uptime

システムをいつ起動したかを調べる

$ uptime -s

コマンド一覧に戻る


w

概要

現在システムにログインしているユーザを表示するコマンド。

オプション

オプション 機能
-h ヘッダーを非表示にする
-u 現在プロセスとCPU時間を計算している場合にユーザ名の違いを無視する
-s ログイン時刻/JCPU/PCPUを非表示にする
-f FROM項目非表示にする
user 表示したいユーザーを指定する

Sample Code

基本構文

$ w

ユーザーを指定して表示

$ w user [ユーザー名]

コマンド一覧に戻る


which

概要

コマンドの実体(bin)の配置場所を表示するコマンド。

オプション

オプション 機能
-a 環境変数PATHにあるすべての実行ファイルを表示する
-r 標準入力からエイリアスを読み込んで、合致したものだけ表示する
--skip-dot ./から始まるディレクトリ(相対パスでの指定)を検索対象外とする
--skip-tilde ~から始まるディレクトリ(ホームディレクトリからの相対パスでの指定)を検索対象外とする

Sample Code

基本構文

# 環境変数PATH上のコマンド全検出
$ which -a

# 特定のコマンドの実行ファイル検索
$ which [コマンド名]

gitの実行ファイル検索

$ which git

コマンド一覧に戻る


yum

概要

RedHat系ディストリビューションで使用されているRPMパッケージを使うためのパッケージ管理コマンド

Yellowdog Updater Modifiedの略。

基本はinstall/upadate/eraseによるパッケージの管理。

いつ何をインストールしたか、などの確認をするhistoryオプションもある。

オプション

すごくたくさんあるので一部のみ

オプション 機能
install パッケージインストール
reinstall パッケージ再インストール
downgrade パッケージダウングレード
erase パッケージ削除
update パッケージアップデート
update-minimal パッケージのコア部分のみアップデート
upgrade 不要パッケージを考慮したアップデート
version リポジトリのバージョン確認
info パッケージもしくはそのグループの詳細
history パッケージ管理履歴の表示
deplist パッケージの依存性確認
check rpmDBの問題確認
check-update 更新可能なパッケージ確認
clean キャッシュ削除
updateinfo リポジトリ更新情報確認

Sample Code

インストール/更新/削除

# インストール
$ yum install [パッケージ名]

# 更新
$ yum update [パッケージ名]

# 削除
$ yum erase [パッケージ名]

パッケージ管理詳細

# ヒストリすべて確認
$ yum history list all

# ヒストリを基に確認したいヒストリ詳細確認
$ yum history info [ヒストリのID]

パッケージの依存確認

# 指定したパッケージが依存しているパッケージの一覧取得
$ yum deplist [パッケージ名]

コマンド一覧に戻る

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away