lsコマンドはファイルやディレクトリの情報を表示するコマンドで、lsコマンドなしにLinuxを使うことはできないと言っても過言ではありません。
しかし、オプションは「-a」や「-l」しか使っていないという人が多いです。
作業効率のために、他のオプションもご紹介します。
lsコマンドの基本
lsコマンドは「list segments」の略で、ファイルやディレクトリの情報を表示するコマンドです。
とても古いコマンドでLinuxの前身ともいえるUnixの一番初めのバージョンから搭載されていました。Linuxコマンドの中で、lsは一番使用する基本的なコマンドです。
基本的な書式は以下の通りです。
$ ls
現在のディレクトリのファイルやフォルダを一覧表示してくれます。
lsコマンドのオプション
-a オプション
すべて表示する
-l オプション
ファイルの詳細も表示する
-1(いち)オプション
リストを縦に並べる
-r オプション
逆順で表示する
-S オプション
ファイルサイズ順でソートする
-X オプション
ファイルを拡張子ごとにまとめる
-R オプション
ディレクトリ内容を再帰的に表示する
-t オプション
更新時間順に並べる
-aオプション:すべて表示する
$ ls -a
「-a」はもっとも使うオプションです。
「a」は、allですべてを意味しています。
-aオプションを使うと、ファイル名の先頭にピリオドがあるファイルも表示します。
先頭にピリオドがあるファイルはLinuxのシステムと密接な関係があり、簡単には編集されたくない設定ファイルのようなものが多いです。
例えば、ホームディレクトリで「ls -a」を叩くと、.bash_hisotoryファイルが見られます。
こちらは、これまでのコマンドの履歴を保存しておくファイルです。
-lオプション:ファイルの詳細も表示する
「-l」オプションもよく使うコマンドです。
「l」はlongで長いを意味しています。
longというだけあって詳細を表示して、横長になります。
上記「-a」オプションと組み合わせて「-la」などで使用することも多いです。
左から順に、
- ファイルタイプ
- パーミション
- ハードリンクの数
- オーナー名
- グループ名
- バイトサイズ
- タイムスタンプ
- ファイル名
の順になっています。
ファイルタイプは一番左の1文字で、
「-:ファイル」
「d:ディレクトリ」
「l:シンボリックリンク」
という意味になる。
シンボリックリンクはリンク先を「->」で表現してくれる。上記の例では「fileA_symbolic -> fileA」となっているのがわかるだろう。
-1(いち)オプション:リストを縦に並べる
$ ls -1
縦に並べるだけであれば「-a」オプションですが、「-1」オプションを使うと縦に並べることができる。
1列に並べると覚えておけば分かりやすいかもしれませんね。
-rオプション:逆順で表示する
$ ls -lr
リストを通常の反対の順で表示したいときは「-r」オプションを追加すればいい。
「ls- l」だと下記の表示になります。
「-r」オプションを追加すると次のように逆順になります。
「r」はreverseで逆を意味しています。
-Sオプション:ファイルサイズ順でソートする
どのファイルでどのくらいの容量を使っているか、知りたいときもあるでしょう。
そんなときに使えるのが、「-S」コマンドになります。
こちらのオプションでは、ファイルをサイズ順で並べてくれます。
「S」は、Size、大きさを意味しています。
下記のように「-l」コマンドと一緒に使うとわかりやすいです。
-Xオプション:ファイルを拡張子ごとにまとめる
$ ls -Xl
lsコマンドでは、「-X」オプションを使用することにより、拡張子の順に並び替えることができます。
「X」は、eXtensionで拡張子を意味しています。
上記のように「me」ファイルと「txt」ファイルに分かれてソートされます。
こちらもファイルを探すときや、ディレクトリの中身の整理の際などには使えます。
-Rオプション:ディレクトリ内容を再帰的に表示する
サブディレクトリにあるファイルを見る場合は、「-R」オプションを使います。
「R」は、recursiveで再帰的を意味しています。
-tオプション:更新時間順に並べる
$ ls -tl