当我将$(pwd)
分配给变量时,我无法将其作为cp
的路径传递:
files=$(find /mnt/eee/ttt/*)
pwd
/mnt/xxx/yyy
path=$(pwd)
echo $path
mnt xxx yyy
当我在cp中使用路径
$files | cp $a
cp: target ‘xxx’ is not a directory
答案 0 :(得分:0)
cp
不会从stdin中读取文件名,因此将列表传送到cp
中是徒劳的。您是否可能将cp
与cpio
混淆了?它们是不同的程序。
您需要运行cp {list of files} {destination directory}
,例如
cp $files $path
如果要将所有文件复制到当前工作目录,则应使用.
以便于简化和可读性(.
表示当前工作目录):
cp $files .
请务必使用cp
阅读man cp
手册页,您将立即成为Shell向导:-)
答案 1 :(得分:-1)
您也许可以使用以下代码:
cp $file1 && file2 &&