|
HOME > Linux Tips ( 目次 ) > Linux コマンド 一覧表 > l > ln - コマンド (プログラム) の説明 ln - コマンド (プログラム) の説明 - Linux コマンド集 一覧表名前ln - ファイルへのリンクを作成する 書式
ln [options]
source
[
dest
]
説明ln コマンドはファイルへのリンクを作成する。特に指定がないとハードリンクを作成する; "-s" オプションを指定するとシンボリック (もしくはソフト) リンクを作成する。 Unix には通常ハードリンクとソフトリンクと呼ばれる、 2 つの「リンク」の概念がある。 ハードリンクは単にファイルの名前である。 (ファイルは複数の名前を持つことができる。 その最後の名前が削除された場合にのみディスク上から実体が消去される。 ファイルが持つ名前の数は ls (1) コマンドで知ることができる。 「もともと」の名前というものは無い: すべての名前は同じステータスを持っている。 通常、必須では無いが、ファイルの名前はすべてそのファイルシステム内にあり、 それ自身のデータもそこに持っている。 ソフトリンク (もしくはシンボリックリンク、または symlink) というのは まったく違った種類のものである: 実体はパス名を含んだ小さくて特殊なファイルである。 従って、ソフトリンクは異なるファイルシステム上 (たぶん他のマシンからマウントされた NFS) のファイルを指すことができる。 また実際には存在しないファイルを指していても構わない。 ( open (2)または stat (2) といったシステムコールにより) アクセスされた場合、 シンボリックリンクへの参照は、オペレーティングシステムのカーネルにより そのパス名で指示されるファイルへの参照として置き換えられる。 (しかし、 rm (1) コマンドや unlink (2) 関数ではリンク自身が削除され、リンクが指しているファイルは削除されない。 lstat (2)や readlink (2) 関数といったシンボリックリンクや、リンクが指しているファイル名のステータスを 得る特殊なシステムコールがある。 その他の色々なシステムコールでは、その操作の対象がシンボリックリンク そのものなのか、それが指しているファイルなのかといったことについて、 オペレーティングシステム間で不明瞭さや違いがある。) » 1 つのファイルのみ与えられた場合、 そのファイルをカレントディレクトリにリンクする。 つまり、(一番最後におかれた) ファイル名と同じ名前でファイルへのリンクをカレントディレクトリに作る。 (これは GNU での拡張機能である) » 最後の引き数がすでに存在するディレクトリであった場合、 ln コマンドはそのディレクトリ内に source ファイルで指示されたそれぞれに対するリンクを作る。 その名前は (一番最後におかれた) source ファイルの名前と同じ名前を持つ。 (以下の "--no-dereference" オプションの説明を参照) » 引き数にファイルが2つ指定された場合、 source を指す dest という名前のリンクが作成される。 最後の引き数がディレクトリでは無いのに、2 つ以上のファイルが指定された 場合はエラーとなる。 特に指定がないと、 ln コマンドは存在しているファイルや、シンボリックリンクの削除はできない。 (そのため、ロックの目的で使うことができる: dest が存在しない場合のみ正常終了する) -f オプションを指定することで強制的に削除することができる。 今ある実装では、ディレクトリへのハードリンクの作成ができる場合でも、 スーパーユーザーにのみ許される操作としている。 link (2) システムコールや ln コマンドでのディレクトリへのハードリンクの作成を POSIX では禁止している。 (しかし異種のファイルシステムをまたがったハードリンクは禁止していない。) POSIX オプション
GNU オプション
GNU バックアップオプションGNU 版のプログラム cp , mv , ln , install, patch は、指示すれば上書き、修正、削除といった場合に ファイルのバックアップを作成する。 バックアップファイルを必要とする場合は -b オプションで指示する。 どういう名前にするかは --backup オプションで指定する。 バックアップファイルの名前を、ファイル名の添字の拡張によって 与えるようにしたい場合、この添字を -S オプションで指示する。
GNU 標準オプション
環境変数変数 LANG, LC_ALL, LC_CTYPE, LC_MESSAGES が通常の意味を持つ。 準拠POSIX 1003.2 に準拠する。 しかし、POSIX 1003.2 (1996) ではソフトリンクについて触れていない。 ソフトリンクは BSD により持ち込まれ、System V release 3 (そしてそれ以前) のシステムでは無い。 関連項目ls (1), rm (1), link (2), lstat (2), open (2), readlink (2), stat (2), unlink (2) 注意
このページでは fileutils-4.1 パッケージでの
ln
コマンドについて説明している。
その他のバージョンでは少し違いがあるかもしれない。
修正や追加は aeb@cwi.nl, aw@mail1.bet1.puv.fi, ragnar@ragnar-hojland.com
宛てにメールで連絡してほしい。
プログラムのバグについては bug-fileutils@gnu.org へ報告してほしい。
|
|