Linuxの覚えておくと便利なコマンドオプション

スポンサーリンク
このブログではアフィリエイト広告を利用しています。

Linuxサーバを操作する上でちょっとしたコマンドオプションを付けるだけで作業を効率化できたり、ミスを防止することができます。

そこで、システムエンジニアの仕事をしていて、よく使ったり、覚えておくべきだと思ったコマンドオプションについて紹介します。

スポンサーリンク

rm/mv/cpコマンド

-iオプション

削除や上書きを本当に実施して良いのか確認してくれるオプションです。

$ cp -i testfile1 testfile2
cp: testfile2' を上書きしますか? y 
$ mv -i testfile1 testfile2
mv:testfile2' を上書きしますか? y
$ rm -i testfile2
rm: 通常ファイル `testfile2' を削除しますか? y
$

いちいち確認されるのは面倒くさいという場合もありますが、root等の管理者権限を持つユーザであれば操作ミスを防ぐために使用する癖をつけておくべきオプションです。

わざわざオプションをつけなくてもrootユーザにはエイリアス機能で有効になっている場合も多いのですが、環境によって異なるため、付与したほうが良いと思います。

cpコマンド

-pオプション

コピー元のファイル属性(パーミッション、所有者、更新時刻)を保持したままコピーするオプションです。

使い方としては管理者権限ユーザでファイル属性を変更せずにコピーしたい場合に使います。

例えば、ファイルのバックアップや実行権限を維持したままファイルをコピーしたい時などがあげられます。

管理者権限を持っていないと-pオプションを付けていても別ユーザが持っているファイルであれば所有者が変更されてしまうので注意が必要です。

lsコマンド

-l(アルファベット小文字のエル)オプション

ファイルのパーミッション、所有者、ファイルサイズや更新時刻など詳細な情報を表示するオプションです。

lsで最もよく使うオプションだと思います。

$ ls -l
合計 36
-rw-rw-r--. 1 test test 10  2月 20 13:00 testfile1
-rw-rw-r--. 1 test test 10  2月 20 13:02 testfile2
-rw-rw-r--. 1 test test 10  2月 20 13:04 testfile3
-rw-rw-r--. 1 test test 10  2月 20 13:03 testfile4
-rw-rw-r--. 1 test test 10  2月 20 13:06 testfile5

-aオプション

ファイルをすべて表示するオプションで、ファイル名の頭が「.」で始まる隠しファイルも表示します。

$ ls -a
.  ..  .testfile6  .testfile7  .testfile8  .testfile9  testfile1  testfile2  testfile3  testfile4  testfile5

ちなみに大文字の-Aオプションは隠しファイルを表示する点は変わりませんが「カレントディレクトリ(.)」と「1つ上のディレクトリ(..)」を除いた形で表示されます。

$ ls -A
.testfile6  .testfile7  .testfile8  .testfile9  testfile1  testfile2  testfile3  testfile4  testfile5

-tオプション

ファイルの更新時間順に表示するオプションです。

基本的に-lオプションと併用して使用します。

$ ls -tl
合計 20
-rw-rw-r--. 1 test test 10  2月 20 13:06 testfile5
-rw-rw-r--. 1 test test 10  2月 20 13:04 testfile3
-rw-rw-r--. 1 test test 10  2月 20 13:03 testfile4
-rw-rw-r--. 1 test test 10  2月 20 13:02 testfile2
-rw-rw-r--. 1 test test 10  2月 20 13:00 testfile1

-Sオプション

ファイルサイズ順に表示するオプションです。

どのファイルがどれだけ容量を使用しているのか確認したい場合に便利です。

基本的に-lオプションと併用して使用します。

$ ls -Sl
合計 20
-rw-rw-r--. 1 test test 34  2月 20 15:34 testfile4
-rw-rw-r--. 1 test test 26  2月 20 15:33 testfile3
-rw-rw-r--. 1 test test 20  2月 20 15:33 testfile2
-rw-rw-r--. 1 test test 12  2月 20 15:33 testfile5
-rw-rw-r--. 1 test test  6  2月 20 15:33 testfile1

-rオプション

ファイルを逆順に表示するオプションです。

$ ls -rl
合計 20
-rw-rw-r--. 1 test test 10  2月 20 13:06 testfile5
-rw-rw-r--. 1 test test 10  2月 20 13:03 testfile4
-rw-rw-r--. 1 test test 10  2月 20 13:04 testfile3
-rw-rw-r--. 1 test test 10  2月 20 13:02 testfile2
-rw-rw-r--. 1 test test 10  2月 20 13:00 testfile1

私が良く使うのは-tオプションや-Sオプションと併用して最新ファイルや一番重いファイルを一番下に表示する方法です。

$ ls -tlr
合計 20
-rw-rw-r--. 1 test test 10  2月 20 13:00 testfile1
-rw-rw-r--. 1 test test 10  2月 20 13:02 testfile2
-rw-rw-r--. 1 test test 10  2月 20 13:03 testfile4
-rw-rw-r--. 1 test test 10  2月 20 13:04 testfile3
-rw-rw-r--. 1 test test 10  2月 20 13:06 testfile5
$ ls -Slr
合計 20
-rw-rw-r--. 1 test test  6  2月 20 15:33 testfile1
-rw-rw-r--. 1 test test 12  2月 20 15:33 testfile5
-rw-rw-r--. 1 test test 20  2月 20 15:33 testfile2
-rw-rw-r--. 1 test test 26  2月 20 15:33 testfile3
-rw-rw-r--. 1 test test 34  2月 20 15:34 testfile4

ログファイル等でファイル数が多いディレクトリの中で一番新しいファイルを見つける場合や容量を圧迫しているファイルを見つける場合に重宝します。

-1(数字のいち)オプション

ファイル名を縦に1列で表示するオプションです。

ファイルの一覧をExcelで作成する場合等に便利です。

$ ls -1
testfile1
testfile2
testfile3
testfile4
testfile5

-hオプション

ファイルサイズの単位を読みやすい形式で表示するオプションです。

ファイルサイズが大きくなってくるとどれくらいなのかぱっと見でわかりづらいですがこのオプションを使用するとK(キロ)やM(メガ)を使用してわかりやすい表示にしてくれます。

-lオプションと併用して使用します。

$ ls -lh
合計 1.2G
-rw-rw-r--. 1 test test 1.0M  2月 20 15:46 testfile1
-rw-rw-r--. 1 test test 100M  2月 20 15:46 testfile2
-rw-rw-r--. 1 test test  10M  2月 20 15:46 testfile3
-rw-rw-r--. 1 test test   34  2月 20 15:34 testfile4
-rw-rw-r--. 1 test test 1.0G  2月 20 15:46 testfile5
スポンサーリンク

dfコマンド

-hオプション

lsコマンドの-hオプションと同様にファイルサイズの単位を読みやすい形式で表示するオプションです。

どの領域がどれくらいの容量が残っているのか確認する場合に数字だだとぱっと見でわかりづらいですがK(キロ)やM(メガ)を使用してわかりやすい表示にしてくれます。

$ df -h
ファイルシス            サイズ  使用  残り 使用% マウント位置
/dev/mapper/centos-root    14G  2.7G   11G   20% /
devtmpfs                  989M     0  989M    0% /dev
tmpfs                    1000M     0 1000M    0% /dev/shm
tmpfs                    1000M  8.9M  992M    1% /run
tmpfs                    1000M     0 1000M    0% /sys/fs/cgroup
/dev/sda1                1014M  130M  885M   13% /boot
tmpfs                     200M     0  200M    0% /run/user/0

tailコマンド

-fオプション/-Fオプション

tailコマンドは指定したファイルの末尾10行(デフォルト)を表示するコマンドですが、-fオプションを付けるとその後、更新された部分がリアルタイムで表示されます。

テストの時にログファイルを開いておくとリアルタイムで表示されるため、何が起こっているか確認でき監視に役に立ちます。

-fオプションと-Fオプションの違いはファイルがリネームされた場合の挙動です。

-fオプションはリネームされた場合に元々のファイルをリネームされた後も表示し続けます。

-Fオプションはリネームされると元々開いていたファイルと同名のファイルを再度オープンしなおします。

そのため、ログの監視を行う場合はログローテートされた時のことを考え-Fオプションを使用したほうが良いように思います。

touchコマンド

-tオプション

ファイルを指定した日時に変更するオプションです

テストでファイルの日時を変更したいことが多々ありますが、このオプションにより実現可能です。

日次は以下の形式で指定します。

[[CC]YY]MMDDhhmm[.ss]

$ ls -l
合計 20
-rw-rw-r--. 1 test test 10  2月 21 09:54 testfile1
$ touch -t 201912301531 testfile1
$ ls -l
合計 20
-rw-rw-r--. 1 test test 10 12月 30 15:31 testfile1

コメント