我有目录 A 和子目录 B,并且正在尝试将所有内容从 B 复制到 A。在 A 中,我运行
cp -ar B/ ~/A,
并收到消息
"cp: 'B/' and '/u/username/A/B' are the same file"
但是,我不确定为什么它认为目的地会涉及 B。
答案1
一般来说,这会尝试将 B 而不是其内容复制到 A 中。由于 B 已经是 A 的子目录,cp
因此正确地说源和目标是同一个文件。
如果您想将 B 的内容复制到 A 中,您需要:
cp -ar /path/to/A/B/* /path/to/A/
如果 A 是您当前的工作目录,则可以使用以下命令:
cp -ar B/* .
答案2
该命令cp -ar B/ ~/A
不仅会复制 的内容,还会复制 中已经存在的B
整个内容。因此,尝试在目录中运行。B
A
cp -ar B/* .
A