免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 3441 | 回复: 26

请教一个基本的关于备份的shell脚本问题,谢谢! [复制链接]

论坛徽章:
0
发表于 2004-06-09 12:23 |显示全部楼层
编写一脚本, 判断某文件是否存在,如果不存在, 打出信息并推出, 如果存在, 将其压缩成 .tar.gz格式.

如果已经有该文件的压缩文件, 则将旧文件命名为 .tar.gz.1, 再压缩新文件. 如果 .tar.gz.1 也存在, 则将 旧的 .tar.gz.1 命名为 .tar.gz.2

以此类推. 如果最旧的文件为 .tar.gz.10 则将其删除后再将 .tar.gz.9 命名为 .tar.gz.10

很基本的问题,可是我不太会,恳请指教

论坛徽章:
0
发表于 2004-06-09 13:25 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

#脚本名称:backup_shell

if [ -d $1 ]
then
if [ -f $1.tar.gz ] ;then
  for i in `ls -r $1.tar.gz*`
   do
    temp=${i#$1.tar.gz};
    temppos=${temp#.};
    tt=` expr $temppos + 0 `
    if [ $tt -lt 10 ] ;then
       k=` expr $temppos + 1 `
       mv $i $1.tar.gz.$k
    else
     echo "equal"
    fi
   done
  tar -cvf $1.tar.gz $1
else
  tar -cvf $1.tar.gz $1
fi
else
  echo "no this dir"
fi

执行:
backup_shell 目录名

论坛徽章:
0
发表于 2004-06-09 14:01 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

真得谢谢你!

done
tar -cvf $1.tar.gz $1
else
tar -cvf $1.tar.gz $1

这样写没问题吗?

论坛徽章:
0
发表于 2004-06-09 14:20 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

真得谢谢你!

done
tar -cvf $1.tar.gz $1
else
tar -cvf $1.tar.gz $1

这样写没问题吗?

论坛徽章:
0
发表于 2004-06-09 14:21 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

没有问题啊。再说你自己试一下就可以了。^-^

论坛徽章:
0
发表于 2004-06-10 18:21 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

sorry!有个问题没有说清楚:就是这个文件不是指定好的,要实现备份的时候 ,要从命令行键入文件的名字和路径!然后,程序自动确定文件的存在,也就是说文件不是固定的,这该怎么实现啊!

论坛徽章:
0
发表于 2004-06-10 20:42 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

其实这个10个的tar.gz的备份很巧,如果超过10个了就会有问题,因为他妈的shell 在ls -r 的时候 13 12 11 10  的东西都放在 4 3 2的后面,那样mv的时候先把9的mv成了10,10没有保存就没了。

论坛徽章:
0
发表于 2004-06-10 20:47 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

这个脚本就可以指定目录名来备份了吧,粗看一下没什么问题

论坛徽章:
0
发表于 2004-06-11 12:24 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

可以吗?比如我有个文件叫a,用这个程序备份了,现在来到别的目录下,有另一个文件是b,我不改动程序就可以使用这个程序备份吗?

论坛徽章:
0
发表于 2004-06-11 12:39 |显示全部楼层

请教一个基本的关于备份的shell脚本问题,谢谢!

肯定可以啊。你试一下不就可以了吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP