ls
lsは、ファイル、ディレクトリの情報を表示するコマンドです。
構文
- (構文)
- ls [オプション] [<パス>]
| オプション | 説明 |
|---|---|
| -a | 隠しファイルも含め、全てのファイルを表示する |
| -A | 隠しファイルも含め、全てのファイルを表示するが 「.」「..」は表示しない |
| -F | ファイル名/ディレクトリ名に種類を表す記号を付加して表示する (/:ディレクトリ、*:実行可能) |
| -i | iノード番号を表示する |
| -l | ファイル名だけでなく、ファイルの詳細も表示する |
| -m | ファイル名/ディレクトリ名をカンマ区切りで表示する |
| -r | 並びを逆に表示する |
| -R | 再帰的にファイル名/ディレクトリ名を表示する |
| -S | サイズの大きい順に表示する |
| -t | 更新時間が新しい順に表示する |
| -1 | ファイル名のみ縦に表示する |
| --help | コマンドのヘルプを表示する |
| --full | 詳細な更新日時を表示する |
サンプル
カレントにあるファイル名とディレクトリ名を一覧表示する
$ ls
パス「/home/hoge」にあるファイル名とディレクトリ名を一覧表示する
$ ls /home/hoge
パス「/home/hoge」配下の全ディレクトリを再帰的に詳細一覧表示する
$ ls -lR /home/hoge
カレントにあるファイル名とディレクトリ名を詳細に一覧表示する
[taro@svr ~]$ ls -l
total 4
drwxr-xr-x 2 taro taro 4096 Jan 1 08:30 tmp01
drwxr-xr-x 2 taro taro 512 Feb 12 09:45 tmp02
-rw-r--r-- 1 taro taro 1397 Mar 3 18:17 aaa.txt
lrwxrwxrwx 1 root root 8 Jan 25 23:28 lnk01 -> /usr/etc
各列に表示されている項目は以下の通りです。
| 1列目1桁目 | 種類 d:ディレクトリ -:ファイル l:リンク |
| 1列目2~10桁目 | パーミション |
| 2列目 | ハードリンクの数 |
| 3列目 | 所有者名 |
| 4列目 | グループ名 |
| 5列目 | サイズ |
| 6列目 | 更新日時(月) |
| 7列目 | 更新日時(日) |
| 8列目 | 更新日時(時:分) |
| 9列目 | ファイル名/ディレクトリ名/リンク名 |
パーミッションの各列の意味は以下の通りです。
| 表示 | 対象 | 意味 |
| r | 所有者 | 読込み権限あり |
| w | 書き込み権限あり | |
| x | 実行権限あり | |
| r | グループ | 読込み権限あり |
| w | 書き込み権限あり | |
| x | 実行権限あり | |
| r | その他 | 読込み権限あり |
| w | 書き込み権限あり | |
| x | 実行権限あり |
権限が無い項目は、「-」が表示されます。
カレントにあるファイル名とディレクトリ名を更新時間順に詳細一覧表示する
$ ls -lt
最後の10件のみ表示する
$ ls -l | tail
tailのデフォルト値が10件のため、件数の指定を省略しています。
更新日付が最新のものから5件表示する
$ ls -lt | head -5
ファイル名のみを縦に並べて表示する
$ ls -1
ファイル・ディレクトリの一覧をhoge.txtファイルに追記出力する
$ ls -l >> hoge.txt
上書き出力したい場合は、「>>」を「>」にすればOKです。
ls-l の結果をlessで表示する
$ ls -l | less
ls -l の結果が大量に存在する場合に便利です。
カレントディレクトリに存在するファイル数を表示する
$ ls -1 | wc -l
備考
- lsは、listの略です。
- <パス>を省略した場合は、カレントディレクトリが対象となります。