cp 参数

CP()                            User Commands                           CP()

NAME
cp - copy files and directories SYNOPSIS
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE... DESCRIPTION
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY. Mandatory arguments to long options are mandatory for short options too. -a, --archive
same as -dR --preserve=all --backup[=CONTROL]
make a backup of each existing destination file -b like --backup but does not accept an argument --copy-contents
copy contents of special files when recursive -d same as --no-dereference --preserve=links -f, --force
if an existing destination file cannot be opened, remove it and try again (redundant if the -n option is used) -i, --interactive
prompt before overwrite (overrides a previous -n option) -H follow command-line symbolic links in SOURCE -l, --link
link files instead of copying -L, --dereference
always follow symbolic links in SOURCE -n, --no-clobber
do not overwrite an existing file (overrides a previous -i option) -P, --no-dereference
never follow symbolic links in SOURCE -p same as --preserve=mode,ownership,timestamps --preserve[=ATTR_LIST]
preserve the specified attributes (default: mode,ownership,timestamps), if possible additional attributes: context, links, xattr, all -c same as --preserve=context --no-preserve=ATTR_LIST
don’t preserve the specified attributes --parents
use full source file name under DIRECTORY -R, -r, --recursive
copy directories recursively --reflink[=WHEN]
control clone/CoW copies. See below. --remove-destination
remove each existing destination file before attempting to open it (contrast with --force) --sparse=WHEN
control creation of sparse files. See below. --strip-trailing-slashes
remove any trailing slashes from each SOURCE argument -s, --symbolic-link
make symbolic links instead of copying -S, --suffix=SUFFIX
override the usual backup suffix -t, --target-directory=DIRECTORY
copy all SOURCE arguments into DIRECTORY -T, --no-target-directory
treat DEST as a normal file -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 display this help and exit --version
output version information and exit By default, sparse SOURCE files are detected by a crude heuristic and the corresponding DEST file is made sparse as well. That is the behavior selected by
--sparse=auto. Specify --sparse=always to create a sparse DEST file whenever the SOURCE file contains a long enough sequence of zero bytes. Use --sparse=never to
inhibit creation of sparse files. When --reflink[=always] is specified, perform a lightweight copy, where the data blocks are copied only when modified. If this is not possible the copy fails, or
if --reflink=auto is specified, fall back to a standard copy. The backup suffix is ‘~’, unless set with --suffix or SIMPLE_BACKUP_SUFFIX. The version control method may be selected via the --backup option or through the VER-
SION_CONTROL environment variable. Here are the values: none, off
never make backups (even if --backup is given) numbered, t
make numbered backups existing, nil
numbered if numbered backups exist, simple otherwise simple, never
always make simple backups As a special case, cp makes a backup of SOURCE when the force and backup options are given and SOURCE and DEST are the same name for an existing, regular file. AUTHOR
Written by Torbjorn Granlund, David MacKenzie, and Jim Meyering. REPORTING BUGS
Report cp bugs to bug-coreutils@gnu.org
GNU coreutils home page: <http://www.gnu.org/software/coreutils/>
General help using GNU software: <http://www.gnu.org/gethelp/>
Report cp translation bugs to <http://translationproject.org/team/> COPYRIGHT
Copyright © Free Software Foundation, Inc. License GPLv3+: GNU GPL version or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. SEE ALSO
The full documentation for cp is maintained as a Texinfo manual. If the info and cp programs are properly installed at your site, the command info coreutils 'cp invocation' should give you access to the complete manual. GNU coreutils 8.4 March CP()

解读

-i  询问用户是否覆盖既有文件之前先询问用户。

-r  目录递归处理 ,拷贝目录
-R或--recursive  递归处理,将指定目录下的所有文件与子目录一并处理。

用 awk 循环给出 Yes (y) 或 No (n),同意覆盖或不同意覆盖。显然同意覆盖有点鸡肋,可以用-f 强制覆盖。

将文件夹Raw下的所有文件及子目录复制到New目录下

awk 'BEGIN {cmd="cp -ri ./Raw/* ./New "; print "n" |cmd; }'

备注说明:print "n" | cmd,先打印cmd命令,然后再打印n。

参考文献:

CSDN博主「胖鹅68」的原创文章。原文链接:https://blog.csdn.net/hbiao68/java/article/details/52682975

linux cp 拷贝不覆盖源文件的更多相关文章

  1. linux cp 拷贝文件或目录

    cp 拷贝文件或目录 默认不能拷贝目录 常用来备份: [root@MongoDB ~]# cp a.txt /tmp/ [root@MongoDB ~]# cp /root/a.txt /tmp/ c ...

  2. LINUX CP命令直接覆盖不提示按Y/N的方法

    refer to: https://blog.csdn.net/qq_36741436/article/details/78732201 cp覆盖时,无论加什么参数-f之类的还是提示是否覆盖,当文件比 ...

  3. linux cp -r chmod -R 递归拷贝 删除 改权限

    在linux下拷贝的时候有时候会出现cp:omitting directory的错误 ,例如 cp:omitting directory "bbs" 说明bbs目录下面还有目录,不 ...

  4. Linux命令(2)--cp拷贝、mv剪切、head、tail追踪、tar归档

    文章目录 一.知识回顾 ls cd 二.Linux基本操作(二) 1.cp 拷贝 2.mv 移动(剪切) 3.head 头部 4.tail 追踪(尾部) 5.tar 归档 查看 压缩 解压 总结 一. ...

  5. linux cp命令参数及用法详解

    cp (复制档案或目录)[root@linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[root@linux ~]# cp [options] ...

  6. scp linux远程拷贝和本地拷贝命令

    linux远程拷贝和本地拷贝命令   一.linux对linux 远程拷贝   scp命令    scp 文件名  root@远程ip:/路径/    将本地home目录下的test.tar的文件拷贝 ...

  7. Linux文件拷贝(6)

    本篇介绍文件拷贝操作,主要讲两个命令: 命令 对应英文 作用 tree[目录名] tree 以树状图列出文件目录结构 cp 源文件 目标文件 copy 复制文件或者目录 tree tree命令可以将一 ...

  8. linux下拷贝整个目录

    该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,就如同DOS下的copy命令一样,功能非常强大. 语法:cp [选项] 源文件或目录 目标文件或目录 说明:该命令把指定的源文件复制到目标文件或 ...

  9. 复制档案或目录 linux cp命令详解

    cp (复制档案或目录) [root@linux ~]# cp [-adfilprsu] 来源档(source) 目的檔(destination)[root@linux ~]# cp [options ...

随机推荐

  1. 入门大数据---Hbase搭建

    环境介绍 tuge1 tuge2 tuge3 tuge4 NameNode NameNode DataNode DataNode ZooKeeper ZooKeeper ZooKeeper ZooKe ...

  2. C++ Primer Plus(四)

    完整阅读C++ Primer Plus 系统重新学习C++语言部分,记录重要但易被忽略的,关键但易被遗忘的. 友元.异常和其他 1.抛出异常类时,虽然catch的是一个引用,但是也会产生一次拷贝,因为 ...

  3. dart快速入门教程 (7.4)

    7.12.多态 多态字面上理解就是多种状态,通俗的说,多态表现为父类定义一个方法不去实现,子类继承这个方法后实现父类的方法,这个方法有多种表现 // import 'person.dart'; voi ...

  4. (私人收藏)商务工作学习万能简约大气PPT模板

    商务工作学习万能简约大气PPT模板 https://pan.baidu.com/s/1aPnPZ285N5VSSErro1cPngehoa

  5. MSIL入门(一)C#代码与IL代码对比

    基础概念 Microsoft中间语言(MSIL),也成为通用中间语言(CIL),是一组与平台无关的指令,由特定于语言的编译器从源代码生成.MSIL是独立于平台的,因此,他可以在任何公共语言基础架构支持 ...

  6. 第三方 CSS 并不安全

    最近一段时间,关于 通过 CSS 创建 “keylogger”(键盘记录器) 的讨论很多. 有些人呼吁浏览器厂商去“修复”它.有些人则深入研究,表示它仅能影响通过类 React 框架建立的网站,并指责 ...

  7. css样式冲突怎么解决?

    一个网页有时会使用两种CSS,那发生css样式冲突要怎么解决?下面本篇文章就来给大家介绍一下发生css样式冲突的解决方法,希望对大家有所帮助. css冲突怎么解决? 解决方法有很多,如果可以对html ...

  8. Git篇---将秘钥添加到github

    第1步:创建SSH Key.在用户主目录下,看看有没有-/.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步.如果没有,打开She ...

  9. 诊断Java线程死锁

    比如我们有运行这样一个程序: 了解多线程的小伙版都知道,这段代码不会有打印结果,因为发生了死锁.我们在服务器上运行试试,没有输出,对应的进程是 32752. 使用 “jstack 32752”排查,后 ...

  10. 华为交换机如何配置SSH远程登录,一分钟秒学会

    从事网络运维工作的小伙伴们都知道,在交换机正式上线时,必须完成配置SSH远程登录,这样做目的是为了日后,维护方便,不需要每次登录设备都要跑到机房,这样既不现实,又费事. 远程登录方式 目前网络设备中主 ...