在linux中,可以利用cp命令的“-i”參數(shù)實(shí)現(xiàn)不覆蓋文件,cp命令用于復(fù)制文件或者目錄,當(dāng)參數(shù)設(shè)置為“-i”時(shí),在覆蓋文件之前會(huì)給出提示,回答“n”時(shí)表示不同意覆蓋文件,回答“y”時(shí)表示同意覆蓋文件,語(yǔ)法為“cp -i 文件名”。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
linux中cp命令怎么不覆蓋文件
Linux cp(英文全拼:copy file)命令主要用于復(fù)制文件或目錄。
語(yǔ)法
cp?[options]?source?dest
或
cp?[options]?source...?directory
參數(shù)說(shuō)明:
-a:此選項(xiàng)通常在復(fù)制目錄時(shí)使用,它保留鏈接、文件屬性,并復(fù)制目錄下的所有內(nèi)容。其作用等于dpR參數(shù)組合。
-d:復(fù)制時(shí)保留鏈接。這里所說(shuō)的鏈接相當(dāng)于 Windows 系統(tǒng)中的快捷方式。
-f:覆蓋已經(jīng)存在的目標(biāo)文件而不給出提示。
-i:與 -f 選項(xiàng)相反,在覆蓋目標(biāo)文件之前給出提示,要求用戶確認(rèn)是否覆蓋,回答 y 時(shí)目標(biāo)文件將被覆蓋。
用 awk 循環(huán)給出 Yes (y) 或 No (n),同意覆蓋或不同意覆蓋。顯然同意覆蓋有點(diǎn)雞肋,可以用-f 強(qiáng)制覆蓋。
示例如下:
將文件夾Raw下的所有文件及子目錄復(fù)制到New目錄下
awk?'BEGIN?{cmd="cp?-ri?./Raw/*?./New?";?print?"n"?|cmd;?}'
備注說(shuō)明:print “n” | cmd,先打印cmd命令,然后再打印n。
相關(guān)推薦:《Linux視頻教程》