2

aどこかにシンボリックリンクされているディレクトリがあります。その内容を directory にコピーしたいb。次の単純な解決策は、いくつかのまれなケース (隠しファイル、ファイル名のエキゾチックな文字など) で壊れませんか?

mkdir b
cp -rt b a/*
4

1 に答える 1

3

末尾に「/」を追加するだけで、シンボリック リンクがたどられ、リンク自体ではなくコンテンツがコピーされます。

cp -a symlink/ dest

Bash グロビングは、ファイル名の特殊文字で詰まることはありません。これが、 などのコマンドの出力を解析するのではなく、グロビングを使用する理由lsです。以下でもいいです。

shopt -s dotglob
mkdir -p dest
cp -a symlink/* dest/
于 2012-06-18T16:31:25.227 に答える