
次のようないくつかのシンボリックリンクファイルを含むディレクトリがあります。
/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
そのような場所に行くことができますか?
答え1
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’