よく使うLinuxコマンドまとめ【基礎編】

#yum 依存関係を含めてRPMパッケージを管理する
※RPM：Redhat Package Manager、パッケージを管理するシステム
使い方）
・yum [オプション][コマンド][パッケージ名]
例）　
・yum -y install test
　→「test」という名前のパッケージをインストールする。問い合わせがあれば全て「yes」で答える。

#ls　ディレクトリの内容を表示する
使い方）
・ls [オプション]
例）
・ls -a
　→今いるディレクトリの内容を、「.」で始まるファイルも含めて、表示する。

#pwd　作業ディレクトリのパスを表示する
使い方）
・pwd　[オプション]
例）
・pwd -P
　→シンボリックリンク（Windowsでいうショートカット）をたどってパスを表示する。

#mkdir ディレクトリを作成する
使い方）
・mkdir [オプション] ディレクトリ名
例）
・mkdir -p test1/sample1
　→親ディレクトリ「test1」がなければ作成した上で、ディレクトリ「sample1」を作成する。

# cp ファイルやディレクトリをコピーする
使い方）
・cp [オプション] コピー元ファイル名 コピー先ファイル名
・cp [オプション] コピー元ファイル名1 コピー元ファイル名2… コピー先ディレクトリ名
例）
・cp -i sample1 sample2 test1/test2
　→sample1とsample2を、ディレクトリtest1/test2にコピーする。同名のファイルがある場合は確認メッセージを表示する。

#mv ファイルやディレクトリの、名前を変更する/移動する
使い方）
・mv [オプション] 移動するもの 移動先ディレクトリ
・mv [オプション] ファイル名/ディレクトリ名 変更後の名前
例）
・mv -i test1.txt tesuto1.txt
　→ファイル「test1.txt」を「tesuto1.txt」に名前変更する。同名ファイルがある場合は確認メッセージを表示する。

・mv -f test.txt sample1/
　→ファイル「test1.txt」をディレクトリ「sample1」へ移動する。同名ファイルがある場合は確認せず上書きする。

#rm　ファイル/ディレクトリを削除する
使い方）
・rm [オプション] ファイル名/ディレクトリ名…
例）
・rm -i test1.txt test2.txt
　→ファイル「test1.txt」「test2.txt」を削除する。削除前に確認メッセージを表示する。

#chown　ファイル所有権やグループ所有権を変更する
使い方）
・chown [オプション] [ユーザー名[：[グループ名]]] ファイル名/ディレクトリ名
例）
・chown -R apple:fruits /var/www/
　→「/var/www/」以下すべてのディレクトリとファイルの、ユーザー所有権を「apple」、グループ所有権を「fruits」に変更する。

#chmod ファイルやディレクトリのアクセス権限を変更する
使い方）
・chmod [オプション] 権限 ファイル名/ディレクトリ名
例）
・chmod -R　400 test.txt
　→ファイル「test.txt」を、自分以外読めないようにする。

#※アクセス権限について

| 記号 |  | 数値 | 権限 |
|:--|:--|--:|:--|
| r | → | 4 | 読み込み可能 |
| w | → | 2 | 書き込み可能 |
| x | → | 1 | 実行可能 |
| - | → | 0 | 権限なし |

アクセス権限を設定する場合、所有者・所有グループ・その他、の順で設定する。
たとえば「chmod 400 test.txt」の場合は
所有者　　　　→　4　→　書き込み可能
所有グループ　→　0　→　権限なし
その他　　　　→　0　→　権限なし
=>自分のみ読み込み可能

r / w / x は、lsコマンドで権限を表示させたときの表示形式
（厳密には違うかもしれませんが、ひとまずその理解でいいかと。）
例）
「rwxr-xr--」

| 所有者 | 所有グループ | その他 |
|:--|:--|:--|
| ｒｗｘ | ｒ－ｘ | ｒ－－ |
| ↓ | ↓ | ↓ |
| ４＋２＋１ | ４＋０＋１ | ４＋０＋０ |
| ＝７ | ＝５ | ＝４ |
754　→　
所有者：　　　　読み・書き・実行
所有グループ：　読み・実行
その他：　　　　読み

#ps　プロセス状況を表示する
使い方）
・ps [オプション]
例）
・ps r
 →実行中のプロセスのみ表示する

#top プロセス状況をリアルタイムで表示する
使い方）
・top [オプション] 
例）
・top -d 5
 →プロセス状況を、更新間隔５秒で表示し続ける。（デフォルトは３秒）
#※psとtopの違い
psはコマンド実行時点のプロセス状況を表示するが、topはリアルタイムで表示し続ける。

#df　ファイルシステムの使用状況を容量で表示する
※ファイルシステム：記憶装置に保存されたデータを管理し、操作するための機能。
　これがないと保存ができなかったり、保存済みファイルの場所を特定できなかったりする。

使い方）
・df [オプション] [パーティション…]
例）
・df -h
 →ファイルシステムの使用状況を、単位をつけて表示する。

※パーティション：メモリに設ける「しきり」。
　WindowsでいうCドライブ / Dドライブの区切りのようなもの。

#du ファイルのディスク使用量を表示する
使い方）
・du [オプション] ファイル名…
例）
・du -h /var/www/
　→/var/www/以下すべてのディスク使用量を、単位をつけて表示する。

#vi エディタ
コマンドモード：vi起動時のモード
　　　↓↑
「ｉ」↓↑「esc」
　　　↓↑
インサートモード：文字を入力する。

カーソルの移動：
上：「k」
下：「j」
右：「l」
左：「h」

終了：               「:q」
保存せず終了：「:q!」
保存して終了：「:wq」

#touch 空ファイルを作成する / アクセス時刻を変更する
使い方）
・touch [オプション] ファイル名…
例）
・touch text.txt
 →ファイル「text.txt」を作成する。
・touch -d "2018/1/1 00:00:00" text.txt
 →ファイル「text.txt」のタイムスタンプを、「2018/1/1 00:00:00」に変更する

#less　テキストファイルの内容を表示する
使い方）
・less [オプション] ファイル名
例）
・less -e text.txt
 →ファイル「text.txt」の内容を表示する。ファイルの終わりまで表示した場合は終了する。

※コマンドモードでのキー
「q」→終了
「g」→ファイルの先頭へ進む
「G」→ファイルの末尾へ進む
「e」→１行進む。前に数字を入力するとその行数分進む。
「y」→１行戻る。前に数字を入力するとその行数分戻る。
「d」→半画面分進む。前に数字を入力するとその画面分進む。
「u」→半画面分戻る。前に数字を入力するとその画面分進戻る。

#tail ファイルの末尾を表示する / ファイルを追跡して表示する
使い方）
・tail [オプション名] [ファイル名]
例）
・tail -n 20 text.txt
　→ファイル「text.txt」の末尾20行を表示する。デフォルトは10行。
・tail -f text.txt
　→ファイル「text.txt」を監視し、ファイルに追記された内容を追跡して表示する。

#service 指定されたLinuxデーモンの起動・停止・ステータス確認を行う
デーモン：UNIX系OSで、常に待機して呼び出されれば処理を行うプログラムの総称。
使い方）
・service サービス名 [コマンド]
例）
・service mail start
　→「mail」という名前のデーモンを起動する。

#systemctl(CentOS7)
serviceコマンドとほぼ同じ。Cent0S 7 からは、serviceの代わりにsystemctlを使う。
[コマンド]とサービス名が反対になっている。

使い方）
・service [コマンド] サービス名
例）
・service stop mail
 →「mail」という名前のデーモンを停止する。

#chkconfig サービスの自動起動を設定する
ラインレベル：Linuxの動作モード
使い方）
・chkconfig [オプション]
例）
・chkconfig --level 3 network off
　→「network」というサービスを、ランレベル3では起動しないようにする。