Unixコマンド/ln
ln †
機能 †
lnコマンドは、ハードリンク、あるいはシンボリックリンクを作成します。-sオプションが
指定された時はシンボリックリンクを作成します。指定されなかった時はハードリンクを作成します。
リンクを作成すると、リンク前のファイル名でアクセスする以外に、リンクした名前でも同じファイルにアクセスできるようになります。
リンクを作成しても、ファイル自体はコピーされず実態はひとるのままなので、複数の別名をつける機能として利用できます。
構文 †
ln [オプション] リンク元(実体) リンク先
オプション †
-s シンボリックリンクを作成する。
コマンド例 †
ハードリンク †
> ln test1 test2 test1のハードリンクをtest2として作成する。 > ls -l lsコマンドでファイル情報を確認 ------------------------------------------------------ total 2 -rw-r--r-- 2 matsui matsui 35 Jul 13 16:30 test1 -rm-r--r-- 2 matsui matsui 35 Jul 13 16:30 test2 ------------------------------------------------------ リンクカウント↑が1ではないのでリンクされていることが分かる
シンボリックリンク †
> ln -s test1 test2 test1のシンボリックリンクをtest2として作成する。 > ls -l lsコマンドでファイル情報を確認 ------------------------------------------------------ total 2 -rw-r--r-- 1 matsui matsui 35 Jul 13 16:30 test1 lrmxrwxrwx 1 matsui matsui 35 Jul 13 16:40 test2 -> test1 ------------------------------------------------------ 先頭にlが付いてシンボリックリンクとなった。 > rm test1 元ファイルを削除してみる > cat test2 cat:test2:No such file or directory リンク先が無いので表示不可能
■リンク元ファイルだけで指定すると、リンク元ファイル名でシンボリックリンクを作成します。