サブディレクトリを移動せずに、1つのファイルをサブディレクトリ内の新しいファイルにシンボリックリンクするのは簡単なようです。しかし、構文についての何かは当惑し、私が期待するものに反しています。ここにテストケースがあります:
mkdir temp
cd temp
mkdir deploy
echo "Contents of the build file!" > deploy/resources.build.php
ln -s deploy/resources.build.php deploy/resources.php
cat deploy/resources.php #bad symlink
これは壊れたシンボリックリンクを作成するだけです!ビルド環境のセットアップスクリプトでこれを実行しているので、可能な限り、現在の作業ディレクトリを変更しないようにします。
ln -s deploy/resources.build.php resources.php
cat deploy/resources.php
また、デプロイサブディレクトリではなく一時ディレクトリにシンボリックリンクを作成するため、機能しません。
cd deploy
ln -s resources.build.php resources.php
cd ..
これは機能しますが、ディレクトリを変更せずに実行する方法を知りたいと思います。
次のような完全パスを使用します。
/home/whatever/src/project/temp/stuff/temp/deploy/resources.build.php
機能しますが、特にプロジェクト環境がビルド間で異なる可能性があるビルド環境などでは、不可解でやや実用的ではありません。
サブディレクトリに移動したりサブディレクトリから移動したりせずに、サブディレクトリ内の2つのファイル間にシンボリックリンクを作成し、新しいファイルに「エイリアス」に新しい名前を付けるにはどうすればよいですか。