LinuxOS上にあるファイルやディレクトリを表示するには「ls」コマンドを実施します。
lsコマンドは現在のカレントディレクトリ内、またはパスをつけることで別のディレクトリ内のファイルやディレクトリを表示することができます。
目次
「ls」コマンドの使い方(Linux)
以下では「ls」コマンドの基本的な操作についてまとめました。
デフォルトのlsコマンドは現状のディレクトリの位置「カレントディレクトリ」のファイル・ディレクトリの情報を表示します。
$ ls bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
上記のように現在いるディレクトリ内のファイルやディレクトリを表示します。
表示の順番はアルファベット順となります。
ファイル・ディレクトリ・シンボリックリンクの表示
デフォルトの「ls」コマンドでは、どれがファイルでどれがディレクトリなのか不明なので、「-F」オプションを付けることで以下のようにファイルを区別することができます。
- ファイル:語尾に何も表示されない
- ディレクトリ:語尾に「/」が表示される
- シンボリックリンク:語尾に「@」が表示される
- 実行可能ファイル:語尾に「*」が表示される
$ ls -F bin@ boot/ dev/ etc/ home/ lib@ lib64@ lost+found/ media/ mnt/ opt/ proc/ root/ run/ sbin@ srv/ sys/ test.txt tmp/ usr/ var/
ディレクトリ指定で表示する
次に指定したディレクトリ内のファイル・ディレクトリを表示したい時はいなのように、コマンドの後にディレクトリを指定します。
以下は、「var」フォルダを指定した表示となります。
$ ls -F /var/ adm/ cache/ crash/ db/ empty/ ftp/ games/ gopher/ kerberos/ lib/ local/ lock@ log/ mail@ nis/ opt/ preserve/ run@ spool/ tmp/ yp/
全てのファイルを表示する
以下ではディレクトリ内の全てのファイルディレクトリを表示する「-a」を使用した例となります。
全てのファイルに加え、通常では表示されない、「.」で始まるファイルやディレクトリも表示します。
$ ls -aF ./ .autorelabel bin@ dev/ home/ lib64@ media/ opt/ root/ sbin@ sys/ tmp/ var/ ../ .dockerenv* boot/ etc/ lib@ lost+found/ mnt/ proc/ run/ srv/ test.txt usr/
縦表示と詳細な情報を表示する
上記のように横表示では見づらいので縦表示にし、かつ詳細な情報を表示するために「-l」オプションを使用します。
$ ls -laF total 28 drwx------ 3 testuser root 4096 7月 3 03:31 ./ drwxr-xr-x 1 root root 4096 7月 3 03:30 ../ -rw------- 1 testuser root 283 7月 3 03:40 .bash_history -rw-r--r-- 1 testuser root 18 7月 21 2020 .bash_logout -rw-r--r-- 1 testuser root 141 7月 21 2020 .bash_profile -rw-r--r-- 1 testuser root 376 7月 21 2020 .bashrc -rw-rw-r-- 1 testuser root 16 7月 3 03:31 file01.txt drwxrwxr-x 2 testuser root 4096 7月 3 03:31 var/
詳細表示の説明としては9行目の「file01.txt」を例に上げます。
-rw-rw-r– ファイルタイプ |
ファイルタイプとパーミッションを表示します。 一番左に表示されるのがファイルタイプとなり、以下の表示となります。 ・”-“:ファイル ・”d”:ディレクトリ ・”l”:シンボリックリンク |
-rw-rw-r– パーミッション |
ファイルタイプとパーミッションを表示します。 ファイルタイプの右側に表示されるのがパーミッションとなり、3つの所有者と3つの権限が表示されます。 所有者は「所有者」、「所有グループ」、「その他」に別れます。 それぞれの所有者の権限は以下で表示されます。 ・”r”:読み取り権限 ・”w”:書き込み権限 ・”x”:実行権限 左記の例で言うと、ファイルタイプで、「所有者」は読み取り・書き込み、「所有グループ」は読み取り・書き込み、「その他」は読み取りのみという権限になります。 |
1 | ハードリンク数 |
testuser | オーナー |
root | グループ |
16 | ファイルサイズ |
7月 3 03:31 | 最終更新日 |
file01.txt | ファイル名 |
パーミッションの詳細な説明については別途記述します。
「ls」コマンドオプション
「ls」コマンドのオプションは以下の通りとなります。
$ ls --help 使用法: ls [オプション]... [ファイル]... List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort is specified. Mandatory arguments to long options are mandatory for short options too. -a, --all . で始まる要素を無視しない -A, --almost-all . および .. を一覧表示しない --author -l と合わせて使用した時、各ファイルの作成者を表示する -b, --escape 表示不可能な文字の場合に C 形式のエスケープ文字を表示する --block-size=SIZE with -l, scale sizes by SIZE when printing them; e.g., '--block-size=M'; see SIZE format below -B, --ignore-backups do not list implied entries ending with ~ -c with -lt: sort by, and show, ctime (time of last modification of file status information); with -l: show ctime and sort by name; otherwise: sort by ctime, newest first -C list entries by columns --color[=WHEN] colorize the output; WHEN can be 'always' (default if omitted), 'auto', or 'never'; more info below -d, --directory list directories themselves, not their contents -D, --dired generate output designed for Emacs' dired mode -f do not sort, enable -aU, disable -ls --color -F, --classify append indicator (one of */=>@|) to entries --file-type likewise, except do not append '*' --format=WORD across -x, commas -m, horizontal -x, long -l, single-column -1, verbose -l, vertical -C --full-time like -l --time-style=full-iso -g -l と同様だがファイル所有者を表示しない --group-directories-first group directories before files; can be augmented with a --sort option, but any use of --sort=none (-U) disables grouping -G, --no-group in a long listing, don't print group names -h, --human-readable with -l and -s, print sizes like 1K 234M 2G etc. --si likewise, but use powers of 1000 not 1024 -H, --dereference-command-line follow symbolic links listed on the command line --dereference-command-line-symlink-to-dir follow each command line symbolic link that points to a directory --hide=PATTERN do not list implied entries matching shell PATTERN (overridden by -a or -A) --hyperlink[=WHEN] hyperlink file names; WHEN can be 'always' (default if omitted), 'auto', or 'never' --indicator-style=WORD append indicator with style WORD to entry names: none (default), slash (-p), file-type (--file-type), classify (-F) -i, --inode print the index number of each file -I, --ignore=PATTERN do not list implied entries matching shell PATTERN -k, --kibibytes default to 1024-byte blocks for disk usage; used only with -s and per directory totals -l 詳細リスト形式を表示する -L, --dereference シンボリックリンクのファイル情報を表示するときは リンクそのものではなくリンク参照先のファイル 情報を表示する -m 要素のリストをカンマで区切り、一行に詰め込む -n, --numeric-uid-gid like -l, but list numeric user and group IDs -N, --literal print entry names without quoting -o like -l, but do not list group information -p, --indicator-style=slash append / indicator to directories -q, --hide-control-chars print ? instead of nongraphic characters --show-control-chars show nongraphic characters as-is (the default, unless program is 'ls' and output is a terminal) -Q, --quote-name enclose entry names in double quotes --quoting-style=WORD use quoting style WORD for entry names: literal, locale, shell, shell-always, shell-escape, shell-escape-always, c, escape (overrides QUOTING_STYLE environment variable) -r, --reverse ソート順を反転させる -R, --recursive 子ディレクトリを再帰的に一覧表示する -s, --size ブロック単位で各ファイルサイズを表示する -S sort by file size, largest first --sort=WORD sort by WORD instead of name: none (-U), size (-S), time (-t), version (-v), extension (-X) --time=WORD with -l, show time as WORD instead of default modification time: atime or access or use (-u); ctime or status (-c); also use specified time as sort key if --sort=time (newest first) --time-style=TIME_STYLE time/date format with -l; see TIME_STYLE below -t ファイル更新時間で新しい順にソートする -T, --tabsize=COLS タブ幅を 8 の代わりに COLS にする -u with -lt: sort by, and show, access time; with -l: show access time and sort by name; otherwise: sort by access time, newest first -U do not sort; list entries in directory order -v natural sort of (version) numbers within text -w, --width=COLS set output width to COLS. 0 means no limit -x list entries by lines instead of by columns -X sort alphabetically by entry extension -Z, --context print any security context of each file -1 list one file per line. Avoid '\n' with -q or -b --help この使い方を表示して終了する --version バージョン情報を表示して終了する The SIZE argument is an integer and optional unit (example: 10K is 10*1024). Units are K,M,G,T,P,E,Z,Y (powers of 1024) or KB,MB,... (powers of 1000). The TIME_STYLE argument can be full-iso, long-iso, iso, locale, or +FORMAT. FORMAT is interpreted like in date(1). If FORMAT is FORMAT1<newline>FORMAT2, then FORMAT1 applies to non-recent files and FORMAT2 to recent files. TIME_STYLE prefixed with 'posix-' takes effect only outside the POSIX locale. Also the TIME_STYLE environment variable sets the default style to use. デフォルトまたは --color=never を指定した場合、ファイルの種類を判別するための カラー表示は無効となります。 --color=auto を指定した場合、標準出力が端末に接続 されている場合のみカラーコードを出力します。LS_COLORS 環境変数によって動作 を設定できます。LS_COLORS を設定する場合は dircolors を使用してください。 終了ステータス: 0 正常終了、 1 軽微な問題が発生 (例: 子ディレクトリにアクセスできない)、 2 重大な問題が発生 (例: コマンド引数が誤っている)。 GNU coreutils online help: <https://www.gnu.org/software/coreutils/> Report ls translation bugs to <https://translationproject.org/team/> Full documentation at: <https://www.gnu.org/software/coreutils/ls> or available locally via: info '(coreutils) ls invocation'
「ls」コマンドの使い方は以上となります。
エンジニアのオンライン学習
エンジニアにおすすめのオンライン教材比較 | |
ITエンジニアが自宅で学習ができるオンラインスクール比較 | |