如何使用cp命令仅复制所有文件而略过文件夹

发布网友 发布时间:2022-03-31 17:18

我来回答

2个回答

热心网友 时间:2022-03-31 18:48

for file in/home/alex/Pictures/DCIM/2*/*.jpg do    #截取图片的文件名 如: "xxoo.jpg"    i=$(echo ${file}|awk -F'/' '{print $NF}')    #判断目标目录中是否存在相同的文件    if ls /home/alex/extpic | grep -q -w ${i} ; then       #若存在,mv 将存在的文件改名,改名后将源目录中的文件复制过去       mv /home/alex/extpic/${i}  /home/alex/extpic/bak_${i}       cp ${file} /home/alex/extpic    fi    #不存在相同的文件 就直接copy    cp ${file}  /home/alex/extpic done #===================================================================== #至于第二个cp,要不要放在if内(如下);放或者不放,------都行,看个人习惯 if '存在' ;then   mv ... ... #存在则改名   cp ... ... #改名后复制文件 else    cp ... ... #不存在 则 直接复制 f

热心网友 时间:2022-03-31 20:06

不要加-R参数就可以

忽略错误提示请在命令最后加上 &> /dev/null 或者 2> /dev/null

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com