lnコマンドで作成するシンボリックリンクについて、毎度忘れてしまうのでメモしておきます。
シンボリックリンクを貼る
シンボリックリンクの貼り方です。
ln -s ファイルのパス リンクのパス
上記の様に実行すると、リンクのパスでファイルへの参照ができるようになります。
Macに置いてあるファイルで確認してみました。
ln -s ~/Downloads/piyo ~/Desktop/hoge
確認します。
ls -al ~/Desktop/hoge
lrwxr-xr-x 1 pugiemonn staff 41 5 25 10:54 /Users/pugiemonn/Desktop/hoge -> /Users/pugiemonn/Downloads/piyo
ここでhogeというファイル開くとpiyoファイルになっていました。
もう一点、以下はhttpdでconfファイルへシンボリックリンクを張った例です。
sudo ln -s /etc/httpd/sites-available/dev.example.com.conf /etc/httpd/sites-enabled/
このように実行した後に、/etc/httpd/sites-enabled/dev.example.com.conf
にはシンボリックリンクが貼られています。
上記は都合によりsudo
がついてます。
ディレクトリのシンボリックリンクを変更する
ディレクトリのシンボリックリンクを変更する場合です。
ln -nfs ディレクトリのパス シンボリックリンクを貼るディレクトリのパス
以下はcurrent
ディレクトリに貼られていたシンボリックリンクを貼り替えた例です。
ln -nfs /var/www/pugiemonn.com/releases/20150510043839 current
currentディレクトリに貼られていたシンボリックリンクを貼りかえました。
よくrm
コマンドでシンボリックリンクを削除していたのですが、削除したくなかったので上記を使用しました。
シンボリックリンクを削除する
lnで作成したシンボリックリンクを削除する場合はunlinkを使用します。
unlink /etc/httpd/sites-enabled/dev.example.com.conf
シンボリックリンクをrmで消すのはよく見ますが、unlinkのほうが良い気がします。
シンボリックリンクのPermissionを変更
chown
コマンドに-h
オプションを付けます。
chown -h pugi:pugi /etc/httpd/sites-enabled/dev.example.com.conf
参考
http://qiita.com/takeoverjp/items/bb1576e90a8a495db4b3
http://qiita.com/pugiemonn/items/9e1bccf3344b74cea832