lnコマンドでシンボリックリンクを相対パスで貼る

lnコマンドはシンボリックリンク貼るときに頻繁に使うコマンド。以下のフォーマットで使用する。
ln -s 参照先 リンク
絶対パスで貼るときは何も困らない。相対パスで貼るときはややこしくて、「リンクの位置」を基準にして相対的な参照先を指定する。
例を示す。
現在位置が/home/senoo/とする。
/home/senoo/temp/reference.datというファイルへのリンクを
/home/senoo/work/の場所に相対パスで貼り付ける。
コマンドを実行して相対パスでリンクを貼りたかったら、以下のようにする。
ln -sf ../temp/reference.dat work/
入力補完もきかないしなんだか気持ち悪いがこれが正しい。
以下ではないので注意。
ln -sf temp/reference.dat work/link.dat

参考: http://d.hatena.ne.jp/kakurasan/20090929/p1

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です