机器学习和生物信息学实验室联盟

标题: 一键代码备份 [打印本页]

作者: xmubingo    时间: 2014-7-15 00:52
标题: 一键代码备份
三更半夜又手抖删了代码。我是懒人,svn也懒得用。我就喜欢永无止境的copy a a.bk这样的方式进行备份,所以经常不小心删代码。

一气之下写了个shell备份代码,在我自己的机器上运行正常,如果有兴趣的同学,自己改改。不保证没有bug,另外我能力有限。
include_dir是备份的目录
ecp_dir是排除的目录
  1. #!/bin/bash

  2. include_dir=("data" "bin" "tasks" "boostdetect")
  3. ecp_dir=("tasks/BING")

  4. find_cmd="find"

  5. for pos in ${include_dir[*]}
  6. do
  7.     find_cmd="${find_cmd} $pos"
  8. done

  9. find_cmd="${find_cmd} \("

  10. len=${#ecp_dir[*]}
  11. if [ $len -ge 1 ]; then
  12.     find_cmd="${find_cmd} -path ${ecp_dir[0]}"
  13. fi

  14. for((i=1;i<$len;i++))
  15. do
  16.     find_cmd="${find_cmd} -o -path ${ecp_dir[i]}"
  17. done

  18. find_cmd="${find_cmd} \) -prune -o -regex '.*/.*\.\(py\|sh\|h\|c\|cpp\)$' -print"
  19. echo $find_cmd
  20. echo $find_cmd | sh > tmp.0
  21. cat tmp.0

  22. files=""
  23. while read line
  24. do
  25.     files="${files} $line"
  26. done <tmp.0

  27. tar czf backup-`date +%F`.tar.gz  $files
  28. rm -rf tmp.0
复制代码

作者: zouquan    时间: 2014-7-15 15:20
高大上啊,
这在啥系统上用啊?
作者: xmubingo    时间: 2014-7-15 15:59
zouquan 发表于 2014-7-15 15:20
高大上啊,
这在啥系统上用啊?

。。。。。linux
作者: hllysx    时间: 2014-7-16 18:29
高大上啊




欢迎光临 机器学习和生物信息学实验室联盟 (http://123.57.240.48/) Powered by Discuz! X3.2