なぜcp --preserve=links
動作しないのですか?いくつかのシンボリックリンクをコピーしたいです。マニュアルページから:
--preserve[=ATTR_LIST]
指定された属性(デフォルト:モード、所有権、タイムスタンプ)を保持し、可能であれば追加の属性:context、link、xattr、all *
私のCentOS 3.10.0-693.el7.x86_64では動作しません。
私のステップは次のとおりです。
[root@ beau]# ls -l
total 4
lrwxrwxrwx. 1 root root 11 Dec 2 21:49 bar.txt -> foo/bar.txt
drwxr-xr-x. 2 root root 4096 Dec 2 21:41 foo
[root@ beau]# cp --preserve=links bar.txt bar1
[root@ beau]# ls -l
total 4
-rw-r--r--. 1 root root 0 Dec 2 23:08 bar1
lrwxrwxrwx. 1 root root 11 Dec 2 21:49 bar.txt -> foo/bar.txt
drwxr-xr-x. 2 root root 4096 Dec 2 21:41 foo
私の質問は:「--preserve = links」オプションが機能しないのはなぜですか?
答え1
簡単に言えば:--preserve=links
保存を意味します。ハードリンク、シンボリックリンクではありません。-P
または、--no-dereference
宛先の代わりにリンク自体をコピーしてシンボリックリンクを維持します。-P
標準であり、GNU cp-d
には-a
。