今回はlsコマンドについてやさしく解説していきたいと思います!
✔こんな人におすすめ
ポイント
lsコマンド使っているけど、いまいち理解できていない
lsコマンドってなに?
プログラミングを学習していると、lsコマンドを使う機会多いですよね
ただ、何となく使っているという方もいるのでは無いでしょうか?
今回は、lsコマンドを「理解して使える」「有名なオプションを使いこなす」この2点を目指して行きます!
では早速行きましょう
目次
lsコマンドとは?
lsコマンド(list segments)とは、「ファイルやディレクトリの情報を一覧で表示してくれる」コマンドになります
ls (カレントディレクトリ以下の情報を表示)
ターミナルにlsコマンドだけを打ち込むと、
カレントディレクトリ(現在いる場所)以下のファイルやディレクトリの情報を一覧で表示してくれます
#ターミナル
$ ls
test1.rb test2.rb test3.rb projects
ls / (ルートディレクトリ以下の情報を表示)
今度は、lsコマンドの後ろに「/」を指定して実行してみます
#ターミナル
$ ls /
bin boot dev etc home lib lib64 local media mnt
opt proc root run sbin srv sys tmp usr var
「/」はルートディレクトリの略になるので、lsコマンドの後ろに「/」を付けることで
ルートディレクトリ以下のファイルやディレクトリの情報を一覧で表示してくれます
「/」だけではなく、lsコマンドの後ろにパスを指定すると、パスを指定した場所以下の
ファイルやディレクトリの情報を表示してくれます
#ターミナル
$ ls /home
ec2-user
#ルートディレクトリ以下のhomeディレクトリ以下のファイルやディレクトリを表示している
lsコマンドのオプション
lsコマンドには他にも便利な機能がたくさんあります!
オプションを付けることで、様々な機能を使えるようになるので、是非覚えて行きましょう!
オプションの指定方法は
ls の後に「-(ハイフン)」をつけます
よく使うオプションを表にまとめました
-lオプション | ファイルの詳細情報 |
-aオプション | 隠しファイルも表示 |
-Fオプション | ファイルの種類も表示 |
-mオプション | ,(カンマ)で区切って表示 |
-lオプション (ファイルの詳細情報)
-lオプションを使うと、ファイルの詳細情報を表示することができます!
#ターミナル
$ ls -l
-rwxrw-r-- 1 root root 0 Jul 22 07:06 test1.rb
-rwxrw-r-- 1 root root 0 Jul 22 07:06 test2.rb
-rwxrw-r-- 1 root root 0 Jul 22 07:06 test3.rb
drwxrwxr-x 4 root root 39 Mar 23 08:13 projects
「-rwxrw-r-- 1 root root 0 Jul 22 07:06 test1.rb」
こちらの内容は少し難しいので、簡単に説明していきます
「-rwxrw-r--」という記述ですが、
rの左隣り「-」は通常のファイルという意味になります
初めにくる記号はファイルのタイプを表しており、ファイルのタイプは表のように種類があります
- | 通常ファイル |
d | ディレクトリ |
l | シンボリックリンク |
「rwxrw-r--」
こちらは、ファイルの権限を表しています
「誰にどんな操作を許可するのか?」の情報が記載されており、
rwx (オーナー) | rw-(グループ) | r--(その他ユーザー)
この様に「オーナー」「グループ」「その他ユーザー」の3つに区切られます
区切りの中に書かれている「rwx」の意味は
r(read) | 読み取りOK |
w(write) | 書き込みOK |
x(execute) | 実行OK |
となり
- オーナーは読み取りOK、書き込みOK、実行OK
- グループは読み取りOK、書き込みOK、実行ダメ
- その他ユーザーは読み取りOK、書き込みダメ、実行ダメ
となります
残りの、「root root 0 Jul 22 07:06 test1.rb」ですが
- root rootは、「左rootが所有者」「 右のrootがグループ」という意味
- Jul 22 07:06は時刻情報
- 最後の「test1.rb」はファイル名またはディレクトリ名になります
-aオプション (隠しファイルも表示)
-aオプションは隠しファイルも表示するオプションです
隠しファイルとは
「.test」
この様に.(ドット)で始まるファイルを隠しファイルと言います
隠しファイルは通常のlsコマンドでは表示されず、非表示になっているファイルです
隠しファイルがある理由としては
- 普段は触れることのないファイルのため、誤って削除しないようにする
- セキュリティの面で第三者から見れない様にする
などがあります
-aオプションをつけて実行することで、隠しファイルも一緒に表示することができます
#ターミナル
$ ls / -a
bin@ boot/ dev/ etc/ home/ lib@ lib64@ local/ media/ mnt/
opt/ proc/ root/ run/ sbin@ srv/ sys/ tmp/ usr/ var/
-Fオプション (ファイルの種類表示)
-Fオプションは、ファイルの種類も一緒に表示してくれます
#ターミナル
$ ls / -F
. .. .autorelabel bin boot dev etc home lib lib64 local media mnt
opt proc root run sbin srv sys tmp usr var
文字の後に、何やら記号がついていますが、これがファイルの種類を表しています
通常ファイル | 何も付かない |
ディレクトリ | /が付く |
シンボリックリンク | @が付く |
シンボリックリンクは別の方の記事がオススメです
>>シンボリックリンクとは?「分かりそう」で...
この様に、ファイルの種類を記号で表してくれるため、とても便利です!
-mオプション (,(カンマ)で区切って表示)
-mオプションは、,(カンマ)で区切って表示してくれます
#ターミナル
$ ls / -m
bin, boot, dev, etc, home, lib, lib64, local, media, mnt,
opt, proc, root, run, sbin, srv, sys, tmp, usr, var
カンマで区切ってくれるので、ファイルを違う場所に出力したい場合など便利です!
まとめ
lsコマンドは「ファイルやディレクトリの情報を一覧で表示してくれる」コマンド
lsコマンドにはオプションがあり
- -lオプション ファイルの詳細情報
- -aオプション 隠しファイルも表示
- -Fオプション ファイルの種類表示
- -mオプション ,(カンマ)で区切って表示
読んでいただきありがとうございました!