0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

UNIXコマンド `ls` の基本的な使い方についてメモ

0
Posted at

UNIXコマンドの ls について。

こういう状況だとしましょう

こういう状況だとしましょう
.(カレントディレクトリ)
├── aaa1.txt
├── aaa2.txt
└── dir1/
    ├── aaa3.txt
    └── dir2/
        └── aaa4.txt

基本的な使い方

ls は、カレントディレクトリの直下の中身が一覧表示される(ただし隠しファイルと隠しディレクトリは対象外)。

コマンド
ls
結果
aaa1.txt aaa2.txt dir1

ls に引数で文字列を与えると、それにヒットしたものだけが出るようになる。

コマンド
ls aaa1.txt
結果
aaa1.txt

引数は一気に複数与えることができる。

コマンド
ls aaa1.txt aaa2.txt
結果
aaa1.txt aaa2.txt

ワイルドカードは「マッチしたものが並ぶ」

ワイルドカード(アスタリスク * )は、Bash(シェル)の仕組みによってマッチしたものが全て並ぶと考えるといい。

コマンド
ls *.txt
上記コマンドはこれと同じ意味である
ls aaa1.txt aaa2.txt
結果
aaa1.txt aaa2.txt

ディレクトリ名を与えると、その直下の中身が出てくる

ls にディレクトリ名を与えると、そのディレクトリ直下の中身が出てくる。

コマンド
ls dir1
結果
aaa3.txt dir2

ワイルドカードでディレクトリ名をマッチさせることもできる。

コマンド
ls di*
上記コマンドはこれと同じ意味である
ls dir1
結果
aaa3.txt dir2

ワイルドカード単発「 * 」だと全てにマッチする(ただし隠しファイルと隠しディレクトリは対象外)。ファイルはもちろん出てくるし、ディレクトリ名にもマッチするのでその直下の中身も出てくる。

コマンド
ls *
上記コマンドはこれと同じ意味である
ls aaa1.txt aaa2.txt dir1
結果
aaa1.txt aaa2.txt

dir1:
aaa3.txt dir2

上記では複数の引数が渡されたため、どのディレクトリの中身か区別するために dir1: というヘッダーが表示されている。

このように ls * は、

  • カレントディレクトリの中身は見たい!
  • サブディレクトリの中身も見たい!
  • サブのサブまでは行かなくていいです

という場面で役立つ。

私は自分のお気に入りのオプションを ls * にくっつけて使うことが多い。

お気に入りコマンド
ls -rlth *
  • -r (reverse):ソート順を逆にする
  • -l (long):権限・ファイルサイズ・更新日時などの情報を表示する
  • -t (time):ファイルを更新日時が新しい順に並べ替える
  • -h (human-readable):ファイルサイズを 1K、25M、2G などの読みやすい見た目にする

カレントディレクトリの中身も、各サブディレクトリの中身も、timeとreverseの併用によって古い順にソートされて出てくる。
すると一番新しいファイルがターミナルの下のほう(次のコマンド入力場所のすぐそば)に見えているため、作業しやすい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?