#ファイルを別名ファイルとして使うよう設定したい
仕事で上司がやっていました。
シンボリックリンクと言うそうです。
↓こういう表示のやつです。
1月 18 12:50 test.php -> test_dev.php
この場合は、test.phpが呼ばれるとき、test_dev.phpが使われます。
windowsにおけるショートカットの、Linux版的なものらしいです。
#こういう理由で使いたい
開発時にtest.phpというファイルを、複数パターン用意したいとします。
試験環境用→ test_dev.php
本番環境用→ test_prod.php
をそれぞれ用意したとして、
いちいちファイル名を変更して切り替えるやり方だと、
2つファイル名を変更しないといけないので面倒です。
例) test_dev.phpからtest_prod.phpに名前変更して切り替える
- test.phpをtest_dev.phpに名前変更
- test_prod.phpをtest.phpに名前変更
今どっちを使っているかの確認も、
名前変更されていない方という認識で見ないといけないので、直感的じゃないと思います。
#Linux上でのシンボリックリンクのやり方
Linux上でシンボリックリンクを設定する場合、
ln 元のファイル名 使いたい名前
該当ファイルの置いてあるディレクトリに入って上記を実行すると、できます。
上記test.phpの例の場合、
ln test_prod.php test.php
と実行すると、
linux上の該当ディレクトリで、以下が表示されます。
test.php -> test_prod.php
これで、test.phpが呼ばれるとき、test_prod.phpが使われるようになります。
どちらを使っているかの確認も、上記シンボリックリンクの表記を見れば一目瞭然です。
上書きしたい場合は、-f(-forceでも可)を付けて実行すると、上書きできます。
-fを付けないと、もうあるよ!って怒られます。
ln -f test_prod.php test.php
ln -force test_prod.php test.php
コマンドについて詳細に知りたい場合は、参考サイトの一番下をご覧ください。
#参考サイト