Ls_(UNIX)
[Wikipedia|▼Menu]
lsの例

ls(エルエス)はPOSIXおよびSingle UNIX Specificationで規定されているコマンドである。ファイルの一覧を表示するコマンドである。
目次

1 歴史

2 振る舞い

3 使用例

4 関連項目

5 外部リンク

歴史

lsはAT&T UNIXの最初のバージョンから存在していた。その名称は、Multicsに存在した類似のコマンドから継承された。現在使われている主な実装には、フリーソフトウェア財団によるものとFreeBSDOpenBSDNetBSDDarwinなどのBSD系システムで用いられているものの2つがある。どちらもフリーソフトウェアであり、オープンソースである。
振る舞い

Unix系のシステムには、現在ユーザが作業を行っているファイルシステム上の場所を表す「カレントディレクトリ」という概念がある。lsは引数を伴わずに起動された場合、カレントディレクトリのファイルの一覧を表示する。引数にカレントディレクトリ以外のディレクトリを指定した場合、そのディレクトリのファイル一覧を表示する。また、ディレクトリやファイルのリストを引数として指定することもでき、その場合はすべての指定されたファイルと、ディレクトリ内のファイルの一覧を表示する。

そのディレクトリ自身を示す「.」や親ディレクトリの「..」をはじめ、各種設定ファイル等のファイル名の慣例である「.」で始まるファイル名をもつファイル(ドットファイル)は標準では表示されず、表示するには明示的に-aオプションを指定する必要がある。

オプションが指定されなかった場合、lsはファイル名のみを表示する。しかし、この形式ではファイルタイプパーミッション、サイズなどの情報がわからない。lsには表示形式を変更するオプションが多く存在するが、もっとも一般的なものは次に挙げたものである。

-l :長い形式で表示する。ファイルタイプ、パーミッション、ハードリンクの数、所有者、グループ、サイズ、日付、ファイル名。

-F :ファイルの性質を表す文字をファイル名の末尾に付加する。例えば「*」は実行可能ファイル、「/」はディレクトリを表し、通常のファイルは何も付加されない。

-a :「.」で始まるファイル名のものを含め、ディレクトリ内のすべてのファイルを表示する。

-R :サブディレクトリ内のファイルを再帰的に表示する。従って、ls -R /とするとシステムに存在するすべてのファイルを表示する。

一部の環境では、--color(GNU ls)または-G(FreeBSD ls)オプションを指定するとファイルタイプによって異なる色で表示される。表示する色を決定する際、FreeBSDのlsではファイルタイプとパーミッションのみで決定されるが、GNUのlsではそれに加え拡張子によっても色を変えることができる。

このようなオプションを指定した場合、lsの出力は次のようになる。 brw-r--r-- 1 unixguy staff 64, 64 Jan 27 05:52 block crw-r--r-- 1 unixguy staff 64, 255 Jan 26 13:57 character -rw-r--r-- 1 unixguy staff 290 Jan 26 14:08 compressed.gz -rw-r--r-- 1 unixguy staff 331836 Jan 26 14:06 data.ppm drwxrwx--x 2 unixguy staff 48 Jan 26 11:28 dir -rwxrwx--x 1 unixguy staff 29 Jan 26 14:03 executable prw-r--r-- 1 unixguy staff 0 Jan 26 11:50 fifo lrwxrwxrwx 1 unixguy staff 3 Jan 26 11:44 link -> dir -rw-rw---- 1 unixguy staff 217 Jan 26 14:08 regularfile

lsには他にも多くのオプションが存在し、それらはmanページで調べることができる。
使用例

次の例は2つの異なる引数を与えられた時のlsコマンドの出力の違いを示している。$ pwd/home/fred$ ls -ldrwxr--r-- 1 fred editors 4096 drafts-rw-r--r-- 1 fred editors 30405 edition-32-r-xr-xr-x 1 fred fred 8460 edit$ ls -Fdrafts/ edition-32 edit*

ここでユーザfredのホームディレクトリにはdraftsというディレクトリ、edition-32という通常のファイル、editという実行可能ファイルが存在することがわかる。lsはユーザ、グループ、世界(それ以外)がファイルに対しどのようなパーミッション(権限)を持っているかを表現するために特別な記法を使っている。

パーミッション部分の最初の文字はファイルの種別を表している。

文字意味
-通常のファイル
bブロックデバイス
cキャラクタデバイス
dディレクトリ
lシンボリックリンク
pまたは=名前つきパイプまたはFIFO
sソケット

残りの部分は3文字ごとのブロックに分けられ、r、w、xはそれぞれ読み込み、書き込み、実行の権限が存在することを意味する。最初のブロックは所有ユーザの、2つめのブロックは所属しているグループの、3つめのブロックはその他の場合のパーミッションを表している。上の例では、ユーザfredはedition-32を読み書きできるが、実行はできない。editorsグループのメンバーはそれ以外のユーザと同様、edition-32を読めるが、書き込んだり実行したりすることはできない。詳しくはファイルパーミッションを参照のこと。
関連項目

sl (UNIX)

外部リンク

ls(1)
- Linux JM Project

ls(1) - FreeBSD jpmanプロジェクト

ls(1) - OpenBSD(英語)

ls(1) - SunOS リファレンスマニュアル

ls(1) - HMUGリファレンスマニュアル(英語)

ls ドキュメント(GNUプロジェクト版、英語)










Unixコマンド
ファイルとファイルシステム管理

cat

chmod

chown

chgrp

cksum

cmp

cp

dd

du(英語版)

df(英語版)

file

fsck

fuser(英語版)

ln

ls

lsof

mkdir

mount

mv

pax

pwd

rm

rmdir

size

split

tee

touch

type

umask(英語版)

プロセス管理
at

bg

chroot

cron

fg

kill

killall

nice

pgrep

pidof

pkill

ps

pstree(英語版)

reboot

shutdown

time

top

ユーザ管理/環境
clear

env

exit

finger

history(英語版)

id

logname(英語版)

mesg(英語版)

passwd

su

sudo

uptime

talk

tput(英語版)

uname

w

wall(英語版)

who

whoami

write

テキスト処理
awk

banner

basename

comm(英語版)

csplit(英語版)

cut

diff

dirname

ed

ex(英語版)

fmt

fold(英語版)

head

iconv

join(英語版)

less

more

nkf

nl(英語版)

paste(英語版)


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:15 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef