まずは何はともあれ、Terminalを起動し、ピリオド「.」を打ってリターンキーを押してみて下さい。
Welcome to Darwin! [u144:~] hiro% . /Users/hiro [u144:~] hiro% pwd /Users/hiro
pwdと同じ結果になりましたね。それではもう一つ、今度は小文字のエル「l」を入れてみましょう。
[u144:~] hiro% l total 8 -rw-r--r-- 1 hiro staff 55 Dec 1 19:17 #hello.c# drwx------ 4 hiro staff 264 Dec 23 12:19 Desktop drwx------ 18 hiro staff 568 Dec 23 12:13 Documents drwx------ 27 hiro staff 874 Dec 7 22:47 Library drwx------ 2 hiro staff 264 Sep 1 08:51 Movies drwx------ 2 hiro staff 264 Sep 1 08:51 Music drwx------ 2 hiro staff 264 Sep 1 08:51 Pictures drwxr-xr-x 3 hiro staff 264 Sep 1 08:51 Public drwxr-xr-x 4 hiro staff 264 Sep 1 09:09 Sites drwxrwxrwx 11 hiro staff 330 Dec 7 21:56 terminaltest drwxr-xr-x 6 hiro staff 264 Dec 7 22:56 terminaltest2
何やらリスト表示されちゃいましたね。実はTerminalにはあらかじめ、何種類かのコマンドの短縮形が用意してあり、上記は、そのうちの2つです。Unixではこのような短縮形をエイリアス(alias)と呼びます。MacOSでのファイルやフォルダの「エイリアス」とは全く別物ですから、気をつけて下さい。では、他にどのようなエイリアスが設定されているか見るためにどうするかというと、「alias」と打ち込むだけです。では試してみましょう。
[u144:~] hiro% alias . pwd .. cd .. cd.. cd .. cdwd cd `pwd` cwd echo $cwd ・ ・ ・
では、自分だけの短縮形を使いたい場合、どうすれば良いのかと言うと、「alias 短縮形 "短縮形が意味するコマンド"」の形で指定します。
では、ディスクの空き容量をKB単位で表示する「df -k」を「d」に割り当ててみましょう。
[u144:~] hiro% d d: Command not found. [u144:~] hiro% alias d "df -k" [u144:~] hiro% d Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/disk1s9 3501960 2175892 1326068 62% / devfs 38 38 0 100% /dev /dev/disk1s11 1054853 21 1002090 0% /private/var/vm fdesc 1 1 0 100% /dev512 512 0 100% /.vol /dev/disk1s8s1 3181538 1251086 1771376 41% /Volumes/Disk /dev/disk1s10 2137824 378228 1759596 17% /Volumes/MacOS9 /dev/disk0s6 1565520 402068 1163452 25% /Volumes/Emergency /dev/disk0s7 11726460 8765432 2961028 74% /Volumes/Dat+App automount -fstab [265] 0 0 0 100% /Network/Servers automount -static [265] 0 0 0 100% /automount
割り当てを解除するには、「unalias 割り当ててあるエイリアス」です。
[u144:~] hiro% unalias d [u144:~] hiro% d d: Command not found.
このように、先ほど割り当てた「d」を入力してもコマンドは実行されなくなります。
aliasコマンドが、最も効果を発揮するのは、長いコマンドの場合です。findコマンドを用いて名前を検索するには、非常に長いオプションを入れねばなりませんので、非常に面倒です。そこで、下記のような方法でエイリアスを割り当てて簡略化します。
[u144:~] hiro% su Password: [u144:/Users/hiro] root# alias f "find / -name '\!*' -print" [u144:/Users/hiro] root# f find /usr/bin/find /Volumes/Disk/usr/bin/find /Volumes/Disk/System/Developer/Source/Commands/shell_cmds/find ・ ・ ・
こうすることで、「f ファイル名」で簡単に名前で検索できるようになります。上記の例でsuしているのは、単にディレクトリのアクセス権の問題を回避するためにやっているだけです。通常ユーザーでもこのaliasは使用できます。なお、上記の例のalias f "find / -name '\!*' -print"のシングルクォートの中の一文字目ですが、使用するフォントによって半角の「¥」記号になったり、半角バックスラッシュ「\」になったりしますが、どちらを入力しても問題ありません。
さて、aliasを指定したものの、一時的にaliasに割り当ててある文字列をaliasとして扱わせたくない、という時もあるでしょう。そういう時は、aliasの前に\(半角の「¥」か半角の「\」)を入れて打ち込みます。
[u144:~] hiro% alias ls "ls -la" [u144:~] hiro% ls total 64 -rw-r--r-- 1 hiro staff 55 Dec 1 19:17 #hello.c# drwxr-xr-x 20 hiro staff 636 Dec 23 12:14 . lrwxr-xr-x 1 hiro staff 34 Dec 23 12:14 .#hello.c -> hiro@u199.d019166210.ctt.ne.jp.405 drwxr-xr-x 5 root wheel 264 Nov 16 00:48 .. ・ ・ ・ [u144:~] hiro% \ls #hello.c# Library Pictures terminaltest Desktop Movies Public terminaltest2 Documents Music Sites [u144:~] hiro%
ちなみに、aliasコマンドで指定したaliasは同じウィンドウの中でしか使用できず、Terminalを終了すると消えてしまいます。いつも必ず使用するので、どのウィンドウでもいつでも使用できるようにしたい場合は、設定ファイルに直接書き込みます。設定ファイルの場所は、
/usr/share/init/tchs/aliases
です。このファイルを開くと、
## # TCSH Expanded C-Shell INITIALIZATION FILE # Aliases file # # Wilfredo Sanchez Jr. | tritan@mit.edu # June 10, 1994 # # MIT Project Athena ## alias . 'pwd' alias .. 'cd ..' ・ ・ ・とaliasが指定してありますので、これに書き加えてやればOKです。