2008年05月10日
:
  1. #!/usr/bin/env
  2.  
  3. import sys
  4. import os
  5. import re
  6.  
  7. TEST = "test"
  8. def find_dir(original_dir,l):
  9.         while True:
  10.                 for f in os.listdir(original_dir):
  11.                         #print f,
  12.                         f = original_dir+"/"+f
  13.                         if os.path.isdir(f):
  14.                                 l.append(f)
  15.                                 find_dir(f,l)
  16.                 return
  17.  
  18. def file_copy(original_dir,num):
  19.         global TEST
  20.         while num:
  21.                 test_dir = TEST+str(num)
  22.                 for f in os.listdir(original_dir):
  23.                         #print f,
  24.                         f = original_dir+"/"+f
  25.                         if os.path.isfile(f):
  26.                                 print "cp",f,re.sub(original_dir,test_dir,f)
  27.                 l = []
  28.                 find_dir(original_dir,l)
  29.                 for i in l:
  30.                         for j in os.listdir(i):
  31.                                 j = i+"/"+j
  32.                                 if os.path.isfile(j):
  33.                                         print "cp",j,re.sub(original_dir,test_dir,j)
  34.                 num-=1
  35.                 print
  36.  
  37. def dir_copy(original_dir,num):
  38.         global TEST
  39.         while num:
  40.                 print "mkdir",
  41.                 test_dir = TEST+str(num)
  42.                 l = []
  43.                 find_dir(original_dir,l)
  44.                 for i in l:
  45.                         print test_dir,re.sub(original_dir,test_dir,i),
  46.  
  47.                 num-=1
  48.                 print
  49.         return
  50.  
  51. def main(argv=None):
  52.         if argv is None:
  53.                 argv = sys.argv
  54.         if len(sys.argv) != 2:
  55.                 return(usage())
  56.         num = 5
  57.         print "echo \"Starting create directories\""
  58.         print "date +%T.%N"
  59.         dir_copy(argv[1],num)
  60.         print "echo \"Starting copy files\""
  61.         print "date +%T.%N"
  62.         file_copy(argv[1],num)
  63.         print "echo \"Recursive directory stats\""
  64.         print "find . -print -exec ls -l {} \\;"
  65.         print "du -s *"
  66.         print "date +%T.%N"
  67.  
  68.         print "echo \"Scanning each file\""
  69.         print "find . -exec grep kangaroo {} \\;"
  70.         print "find . -exec wc {} \\;"
  71.         print "date +%T.%N"
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78. def usage():
  79.         print "\n%s [Your File name]\n" % sys.argv[0]
  80.         return 1
  81.  
  82. if __name__ == "__main__":
  83.         sys.exit(main())

帮小林子写的测试文件系统性能的,递归目标目录,进行文件复制操作,这个脚本只是为了生成相应的shell脚本。

还有一个公司用的脚本,就不贴了。
前天在公司写程序,用C语言,发现手生的很,觉得要是用写的话几行就搞定的,C得写半天,郁闷啊,俺被给害了……

昨天在公司装了个ubuntu8.04,二十分钟就装好了,等F9出来后再装个F9,^_^

BTW:scim-这个输入法不错,无论你用拼音还是五笔都是一个不错的选择。

标签 :

3 楼了已经

  • crazyfranc写于08年05月10日

    你们公司是搞python的?

  • luguo写于08年05月10日

    咋用python去生成bash脚本而不是去直接写呢?

  • cocobear写于08年05月14日

    python写顺手了,感觉shell在许多地方比较“怪异”,呵。

发表评论

在下面加入你的评论,或者 trackback 从你的博客站点。 订阅本文的评论。

:

:

:

« 烦……
» 地震了