Next: mkdir invocation, Previous: link invocation, Up: Special file types
lnは,ファイル間のリンクを作成します.デフォルトで,それはハー ドリンクを作成します.-sを用いると,シンボリック(または ソフト(soft))リンクを作成します.概要です.
ln [option]... target [linkname] ln [option]... target... directory
ハードリンク(hard link)は,既存のファイルの別名です.リンクとオ リジナルは区別できません.技術的には,それらは同じinodeを共有し,inode はファイルに関する必要な情報をすべて含んでいます — 実際,inodeがファ イルであると言っても間違いではありません.既存のすべての実装で は,ディレクトリにハードリンクを作成できず,ハードリンクはファイルシス テム間をまたぐことができません.(しかしながら,これらの制限は POSIXとマッチしません.)
一方,シンボリックリンク(Symbolic links) (短く言うと symlinks)は,リンクファイルが実際には名前の異なるファイルを参照 する特殊なファイル形式です(すべてのカーネルがサポートしているわけでは ありません.System V release 3(とそれより古いもの)はsymlinkがありませ ん).ほとんどの処理(開く,読み込む,書き出す等)は,シンボリックリンク を通じて行われ,カーネルは自動的にリンクをdereferencesし,リンク 先を処理します.しかし,リンク先ではなくリンクファイル自身に作用する (例えば削除)処理もあります.See Symbolic Links.
プログラムは以下のオプションも受け入れます.Common optionsも参照 してください.
リンク先が(シンボリックリンクではない)実際のディレクトリのとき,不明瞭
なことはありません.しかし,指定されたリンク先がディレクトリへのシンボ
リックリンクの時,ユーザの要求の扱い方は,二通りあります.ln
は,リンク先を通常のディレクトリとして扱い,それに対するリンクを作成す
ることができます.一方,リンク先を非ディレクトリ — シンボリックリン
ク — として見ることもできます.その場合,lnは,新しいリン
クを作成する前に,そのシンボリックリンクを削除またはバックアップする必
要があります.デフォルトでは,ディレクトリへのシンボリックリンクである
リンク先を,ディレクトリと同様に扱います.
以下は例です.
ln -s /some/name # creates link ./name pointing to /some/name ln -s /some/name myname # creates link ./myname pointing to /some/name ln -s a b .. # creates links ../a and ../b pointing to ./a and ./b
終了ステータスのゼロは成功を示し,ゼロ以外の値は失敗を示します.