在linux中,可以利用cp命令的“-i”参数实现不覆盖文件,cp命令用于复制文件或者目录,当参数设置为“-i”时,在覆盖文件之前会给出提示,回答“n”时表示不同意覆盖文件,回答“y”时表示同意覆盖文件,语法为“cp -i 文件名”。
本教程操作环境:linux7.3系统、Dell G3电脑。
Linux cp(英文全拼:copy file)命令主要用于复制文件或目录。
语法
cp [options] source dest
或
cp [options] source... directory
参数说明:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
用 awk 循环给出 Yes (y) 或 No (n),同意覆盖或不同意覆盖。显然同意覆盖有点鸡肋,可以用-f 强制覆盖。
示例如下:
将文件夹Raw下的所有文件及子目录复制到New目录下
awk 'BEGIN {cmd="cp -ri ./Raw/* ./New "; print "n" |cmd; }'
备注说明:print "n" | cmd,先打印cmd命令,然后再打印n。
相关推荐:《Linux视频教程》
Atas ialah kandungan terperinci linux中cp命令怎么不覆盖文件. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!