たとえば、シンボリックリンクファイルのあるディレクトリがあります。
_/home/user/symlink/$(*symlink_file_name1*).mkv
/home/user/symlink/$(*symlink_file_name2*).mkv
_
そして、(シンボリックリンクファイルの)元のファイルを含む別のディレクトリがあります。
_/home/user/original/$(*original_file_name1*).mkv
/home/user/original/$(*original_file_name2*).mkv
_
したがって、問題は、すべての_.mkv
_ファイルを_/home/user/symlink/
_から元のファイルに「変換」することですが、同じファイル名を使用します。
シンボリックリンクフォルダに、元のファイルとその名前をすべて入れたい
_symlink name $(*symlink_file_name*)
_
では、_/home/user/original/$original_file_name1.mkv
_を/home/user/symlink/$(symlink_file_name1).mkv
またはそのようなものに移動できますか?
GNU readlink
を使用して、シンボリックリンクを元のファイル名に解決します。
まず、ディレクトリ設定を模倣します。
$ mkdir original "symlink dir"
$ touch original/file1 original/file2
$ cd "symlink dir"/
$ ln -s ../original/file1 link1
$ ln -s ../original/file2 link2
$ cd ..
次に、ファイルをコピーします。
$ for link in "./symlink dir"/*; do
> orig="$(readlink -f "$link")"
> rm "$link"
> cp -v "$orig" "$link"
> done
‘/home/user/original/file1’ -> ‘./symlink dir/link1’
‘/home/user/original/file2’ -> ‘./symlink dir/link2’