次の構成を考慮すると、次のようになります。
../dir1/file1
../dir2/link-to-file1
../dir2/fileX
fileXを../dir1/file1にコピーしたいが、次のようにすれば:
dir2$ cp fileX file1
それから
dir2/file1
もはやfile1へのリンクがないので、file1とfileXは別のファイルです。
これを行うオプションはありますかcp
?それとも別のタスクを使用する必要がありますか?
修正する
ディレクトリ2に
dir2$ ln -s ../dir1 (this creates link to dir1)
dir2$ cp fileX dir1
しかし、リンクからファイルをコピーする方法はありますか?
答え1
fileXを../dir1/file1にコピーしたいが、次のようにすれば:
dir2$ cpファイルXファイル1
次に、期待どおりに正しいターゲットディレクトリを使用します。dir2 $ cp fileX ../dir1/file1
編集する:
dir2$ cp -L fileX file1
または
dir2$ cp fileX $(readlink file1)
これにより、次の動作が発生します。
before:
dir1/file1
dir2/file1 -> ../dir1/file1
dir2/fileX
after:
dir1/file1 (with content of fileX)
dir2/file1 -> ../dir1/file1
dir2/fileX