首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cp命令在Linux中失败

cp命令在Linux中失败
EN

Stack Overflow用户
提问于 2010-07-07 14:25:59
回答 5查看 3.9K关注 0票数 1

在RHEL 5中执行shell脚本时,我遇到了一个复制命令问题。

执行的命令是

代码语言:javascript
复制
cp -fp /fir1/dir2/*/bin/file1 `find . -name file1 -print`

错误是

代码语言:javascript
复制
cp: Target ./6e0476aec9667638c87da1b17b6ccf46/file1 must be a directory

你能提出一些为什么它会失败的想法吗?

谢谢罗伯特。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-07-07 14:29:28

您不能将多个文件复制到一个文件中,只能复制到一个目录中。

代码语言:javascript
复制
cp file1 file2 file2 file4 

是不可能的,你需要

代码语言:javascript
复制
cp file1 file2 file2 dir1
票数 1
EN

Stack Overflow用户

发布于 2010-07-07 14:30:17

当使用两个以上的文件名作为参数调用cp时,它会将最后一个文件名视为目标目录,并将其他参数中命名的所有文件复制到该目标目录中。举个例子,

代码语言:javascript
复制
cp file1 file2 dir3

将创建dir3/file1dir3/file2。在您的例子中,模式/fir1/dir2/*/bin/file1似乎匹配多个文件名,所以cp试图将find的结果作为目标目录处理--但事实并非如此--而且失败了。

票数 5
EN

Stack Overflow用户

发布于 2010-07-07 14:30:01

您不能将多个文件复制到一个位置,除非该位置是一个目录。

cp应该这样使用:cp sourcefile destinationfilecp source1 source2 destinationdir

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3192385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档