在RHEL 5中执行shell脚本时,我遇到了一个复制命令问题。
执行的命令是
cp -fp /fir1/dir2/*/bin/file1 `find . -name file1 -print`错误是
cp: Target ./6e0476aec9667638c87da1b17b6ccf46/file1 must be a directory你能提出一些为什么它会失败的想法吗?
谢谢罗伯特。
发布于 2010-07-07 14:29:28
您不能将多个文件复制到一个文件中,只能复制到一个目录中。
cp file1 file2 file2 file4 是不可能的,你需要
cp file1 file2 file2 dir1发布于 2010-07-07 14:30:17
当使用两个以上的文件名作为参数调用cp时,它会将最后一个文件名视为目标目录,并将其他参数中命名的所有文件复制到该目标目录中。举个例子,
cp file1 file2 dir3将创建dir3/file1和dir3/file2。在您的例子中,模式/fir1/dir2/*/bin/file1似乎匹配多个文件名,所以cp试图将find的结果作为目标目录处理--但事实并非如此--而且失败了。
发布于 2010-07-07 14:30:01
您不能将多个文件复制到一个位置,除非该位置是一个目录。
cp应该这样使用:cp sourcefile destinationfile或cp source1 source2 destinationdir。
https://stackoverflow.com/questions/3192385
复制相似问题