linux cp命令,怎么跳过相同的文件

 我来答
吉祥二进制
高粉答主

推荐于2018-03-02 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84580

向TA提问 私信TA
展开全部
1、使用cp命令的-n参数即可跳过相同的文件 。

2、cp命令使用详解:
1)、用法:cp [选项]... [-T] 源文件 目标文件

 或:cp [选项]... 源文件... 目录
 或:cp [选项]... -t 目录 源文件...
将源文件复制至目标文件,或将多个源文件复制至目标目录。

2)、长选项必须使用的参数对于短选项时也是必需使用的。
-a, --archive 等于-dR --preserve=all
--backup[=CONTROL 为每个已存在的目标文件创建备份
-b 类似--backup 但不接受参数
--copy-contents 在递归处理是复制特殊文件内容
-d 等于--no-dereference --preserve=links
-f, --force 如果目标文件无法打开则将其移除并重试(当 -n 选项
存在时则不需再选此项)
-i, --interactive 覆盖前询问(使前面的 -n 选项失效)
-H 跟随源文件中的命令行符号链接
-l, --link 链接文件而不复制
-L, --dereference 总是跟随符号链接
-n, --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失效)
-P, --no-dereference 不跟随源文件中的符号链接
-p 等于--preserve=模式,所有权,时间戳
--preserve[=属性列表 保持指定的属性(默认:模式,所有权,时间戳),如果
可能保持附加属性:环境、链接、xattr 等
-c same as --preserve=context
--sno-preserve=属性列表 不保留指定的文件属性
--parents 复制前在目标目录创建来源文件路径中的所有目录
-R, -r, --recursive 递归复制目录及其子目录内的所有内容
--reflink[=WHEN] 控制克隆/CoW 副本。请查看下面的内如。
--remove-destination 尝试打开目标文件前先删除已存在的目的地
文件 (相对于 --force 选项)
--sparse=WHEN 控制创建稀疏文件的方式
--strip-trailing-slashes 删除参数中所有源文件/目录末端的斜杠
-s, --symbolic-link 只创建符号链接而不复制文件
-S, --suffix=后缀 自行指定备份文件的后缀
-t, --target-directory=目录 将所有参数指定的源文件/目录
复制至目标目录
-T, --no-target-directory 将目标目录视作普通文件
-u, --update copy only when the SOURCE file is newer
than the destination file or when the
destination file is missing
-v, --verbose explain what is being done
-x, --one-file-system stay on this file system
-Z, --context=CONTEXT set security context of copy to CONTEXT
--help 显示此帮助信息并退出
--version 显示版本信息并退出

3)、默认情况下,源文件的稀疏性仅仅通过简单的方法判断,对应的目标文件目标文件也
被为稀疏。这是因为默认情况下使用了--sparse=auto 参数。如果明确使用
--sparse=always 参数则不论源文件是否包含足够长的0 序列也将目标文件创文
建为稀疏件。
使用--sparse=never 参数禁止创建稀疏文件。

4)、当指定了--reflink[=always] 参数时执行轻量化的复制,即只在数据块被修改的
情况下才复制。如果复制失败或者同时指定了--reflink=auto,则返回标准复制模式。

5)、备份文件的后缀为"~",除非以--suffix 选项或是SIMPLE_BACKUP_SUFFIX
环境变量指定。版本控制的方式可通过--backup 选项或VERSION_CONTROL 环境
变量来选择。以下是可用的变量值:

none, off 不进行备份(即使使用了--backup 选项)
numbered, t 备份文件加上数字进行排序
existing, nil 若有数字的备份文件已经存在则使用数字,否则使用普通方式备份
simple, never 永远使用普通方式备份

6)、有一个特别情况:如果同时指定--force 和--backup 选项,而源文件和目标文件
是同一个已存在的一般文件的话,cp 会将源文件备份。
少先队O大队长
2018-03-31 · TA获得超过2.5万个赞
知道小有建树答主
回答量:100
采纳率:100%
帮助的人:2.3万
展开全部

使用cp命令的-n参数。

  1. 使用cp命令的-n参数即可跳过相同的文件 。

  2. cp命令使用详解用法:cp [选项]... [-T] 源文件 目标文件或:cp [选项]... 源文件... 目或:cp [选项]... -t 目录源文件。

  3. 将源文件复制至目标文件,或将多个源文件复制至目标目录。

  4. 长选项必须使用的参数对于短选项时也是必需使用的。-a, --archive 等于-dR --preserve=all--backup[=CONTROL 为每个已存在的目标文件创建备份-b 类似--backup 但不接受参数--copy-contents 在递归处理是复制特殊文件内容-d 等于--no-dereference --preserve=links-f, --force 如果目标文件无法打开则将其移除并重试(当 -n 选项存在时则不需再选此项)。

  5. -i, --interactive 覆盖前询问(使前面的 -n 选项失效)-H 跟随源文件中的命令行符号链接-l, --link 链接文件而不复制-L, --dereference 总是跟随符号链接-n, --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失效)-P, --no-dereference 不跟随源文件中的符号链接-p 等于--preserve=模式,所有权,时间戳-preserve[=属性列表 保持指定的属性(默认:模式,所有权,时间戳)。

  6. 可能保持附加属性:环境、链接、xattr 等-csame as --preserve=context-parents 复制前在目标目录创建来源文件路径中的所有目录R, -r, --recursive 递归复制目录及其子目录内的所有内容-reflink[=WHEN] 控制克隆/CoW 副本。请查看下面的内如。-remove-destination。

  7. 尝试打开目标文件前先删除已存在的目的地文件 (相对于 --force 选项)-sparse=WHEN 控制创建稀疏文件的方式-strip-trailing-slashes 删除参数中所有源文件/目录末端的斜杠
    -s, --symbolic-link 只创建符号链接而不复制文件-S, --suffix=后缀 自行指定备份文件的后缀-t,  --target-directory=目录 将所有参数指定的源文件/目录。

  8. 复制至目标目录-T, --no-target-directory 将目标目录视作普通文件-u, --update     copy only when the SOURCE file is newerthan the destination file or when thedestination file is missing-v, --verbose explain what is being done-x, --one-file-system        stay on this file system-Z, --context=CONTEXT set security context of copy to CONTEXT--help 显示此帮助信息并退出--version 显示版本信息并退出。

  9. 默认情况下,源文件的稀疏性仅仅通过简单的方法判断,对应的目标文件目标文件也被为稀疏。这是因为默认情况下使用了--sparse=auto 参数。如果明确使用-sparse=always 参数则不论源文件是否包含足够长的0 序列也将目标文件创文建为稀疏件。使用--sparse=never 参数禁止创建稀疏文件。

  10. 当指定了--reflink[=always] 参数时执行轻量化的复制,即只在数据块被修改的情况下才复制。如果复制失败或者同时指定了--reflink=auto,则返回标准复制模式。

  11. 备份文件的后缀为"~",除非以--suffix 选项或是SIMPLE_BACKUP_SUFFIX环境变量指定。版本控制的方式可通过--backup 选项或VERSION_CONTROL 环境变量来选择。以下是可用的变量值:none, off。       

  12. 不进行备份(即使使用了--backup 选项)numbered, t     备份文件加上数字进行排序existing, nil   若有数字的备份文件已经存在则使用数字,否则使用普通方式备份simple, never   永远使用普通方式备份

  13. 有一个特别情况:如果同时指定--force 和--backup 选项,而源文件和目标文件是同一个已存在的一般文件的话,cp 会将源文件备份。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
厉丰0gV0e1
2016-02-29 · TA获得超过490个赞
知道小有建树答主
回答量:475
采纳率:0%
帮助的人:343万
展开全部
我看了下scp的man手册页,发现没有参数支持跳过相同文件,sorry 你用scp应该是在不同机子上复制,不过你可以通过scp先拷贝到目标主机另外 一个目录,然后通过/bin/cp命令拷贝到到最终的目标目录,因为cp在系统中 使用了别名
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dualxu
2016-03-10 · TA获得超过642个赞
知道小有建树答主
回答量:1010
采纳率:83%
帮助的人:310万
展开全部
cp -n --no-clobber 相同文件不覆盖

or
cp -u --update 文件有更新才覆盖
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逃乐醉乐美乐
2016-03-29 · TA获得超过1306个赞
知道小有建树答主
回答量:534
采纳率:50%
帮助的人:324万
展开全部
cp -rf 文件 源文件
linux 的命令建议参考linux就该这样学等书籍,这样才能提高工作效率,希望能够帮助你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式