shell 复制文件,如果重复,两个都要,不覆盖,怎么处理
3个回答
展开全部
#没有命令可以直接实现,下面我给了的范例:
#假如是把文件filename拷贝到/tmp目录,如果文件存在,则在原文件名后面增加一个后缀(.数字)
if [ ! -f filename ]
then
#文件不存在,直接拷贝
cp $filename /tmp
else
#后缀编号
_l_no=1
#新的文件名
new_filename="$filename.$_l_no"
while [ -f $new_filename ]#判断新文件名是否存在,如果存在,则后缀递增,再尝试
do
#后缀编号递增
((_l_no+=1))
#新的文件名
new_filename="$filename.$_l_no"
done
#拷贝
cp $new_filename /tmp
fi
希望能够帮助到你,谢谢!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询