今日は雨ですね。ハイボール飲んで気分が良いです。
普段の運用や構築でよく使う「ls」コマンドのオプションを紹介します。
lsも突き詰めればたくさんの便利なオプションがあります。
たくさんのおぷしょんの中でよく使うオプションを紹介します。
ls -l
パーミッション、所有者:グループ表示などできるオプションです。
基本でよく使うコマンドかと思います。
Redhat, CentOS系では「ll」と入力するとこのコマンドが実行されるようにaliasが設定されてあるディストリビューションもありますね。
[[email protected] etc]$ ls -l
total 1256
-rw-r--r-- 1 root root 5090 Oct 20 2017 DIR_COLORS
-rw-r--r-- 1 root root 5725 Oct 20 2017 DIR_COLORS.256color
-rw-r--r-- 1 root root 4669 Oct 20 2017 DIR_COLORS.lightbgcolor
-rw-r--r-- 1 root root 94 Oct 19 2017 GREP_COLORS
-rw-r--r-- 1 root root 842 Oct 19 2017 GeoIP.conf
-rw-r--r-- 1 root root 858 Oct 19 2017 GeoIP.conf.default
...
ls -ltr
ls -lに加え、最後に更新があったファイルをソートして一番下に表示するコマンドです。よく使います。
....
drwxr-xr-x 2 root root 67 Sep 18 23:46 my.cnf.d
drwxr-xr-x 2 root root 117 Sep 18 23:46 logrotate.d
drwxr-xr-x 2 root root 300 Sep 18 23:46 alternatives
drwxr-xr-x 6 root root 4096 Sep 18 23:47 sysconfig
drwxr-xr-x 2 root root 199 Sep 18 23:47 ld.so.conf.d
-rw-r--r-- 1 root root 30475 Sep 18 23:47 ld.so.cache
-rw-r--r-- 1 root root 131 Sep 18 23:48 resolv.conf
drwxr-xr-x 9 root root 256 Sep 23 00:29 letsencrypt
たくさんファイルがあって表示しきれないんですが・・・
合わせてless オプションを使うと良いでしょう。基本セットが簡素なシステムではlessもないのでmoreを使ったりします。
ls -l | less (|はパイプ)
less を扱うには以下のことを覚えておけば十分でしょう。
j: で下に1行移動
k: で上に1行移動
SPACE: で1ページ下に移動
b: で1ページ上に移動
Shift+g: で一番下に移動
1, Shift+g: で一番上に移動 (ちょっと特殊な操作ですが、1を押した後にShift+gを押すだけです)
q: で終了
[[email protected] etc]$ ls -l |less ...
drwxr-xr-x 2 root root 6 Oct 19 2017 cron.weekly
-rw-r--r-- 1 root root 451 Oct 19 2017 crontab
-rw-r--r-- 1 root root 1620 Oct 20 2017 csh.cshrc
-rw-r--r-- 1 root root 841 Jun 7 2013 csh.login
drwxr-xr-x 4 root root 78 Sep 18 23:46 dbus-1
drwxr-xr-x 2 root root 44 Aug 25 11:17 default
drwxr-xr-x 2 root root 6 Mar 12 2018 depmod.d
drwxr-x--- 4 root root 74 May 22 02:40 dhcp
-rw-r--r-- 1 root root 1285 Jun 21 08:46 dracut.conf
:
<この状態で上記コマンドで行移動できます>
ファイルサイズでソートしたいんですけど・・・
ls -l | sort -k 5n
lsのオプションでも出来た気がしますが、覚えるのがめんどくさいので、組み合わせでそれぞれの用途にあったコマンドを覚えたほうが、応用が聞くと思います。
sortは表示のカラム(列)を指定して並び替えできますので、他のコマンドと一緒に応用が効きます。例のコマンドではファイルサイズを数字の大きさ順にソートしています。
[[email protected] etc]$ ls -l |sort -k 5n ...
-rw-r--r-- 1 root root 5725 Oct 20 2017 DIR_COLORS.256color
-rw-r--r-- 1 root root 6545 Jun 7 2013 protocols
-rw-r--r-- 1 root root 6722 Oct 20 2017 screenrc
-rw-r--r-- 1 root root 8892 Oct 20 2017 nanorc
-rw-r--r-- 1 root root 12288 Mar 12 2018 aliases.db
-rw-r--r-- 1 root root 30475 Sep 18 23:47 ld.so.cache
-rw-r--r-- 1 root root 62221 Dec 13 2017 php.ini.default
-rw-r--r-- 1 root root 62359 Mar 14 2018 php.ini
-rw-r--r-- 1 root root 670293 Jun 7 2013 services
5番目のカラム(5)を数字の大きさ(n)でソートしています。
ls -l | sort -k 5n | less とか組み合わせても良いですね。