您的位置:首页 > 编程语言 > Python开发

python学习之课后习题

2012-06-27 20:42 302 查看
编写一个动态备份文件的python脚本:

#!/usr/bin/python
#filename :backup_ver2.py
import os
import time
import sys
source=[]
for i in sys.argv:
print i
source.append(i)
#source=['/root/python/test.py','/root/python/backup_var1.py']
print source
del(source[0])
print '#######'
print source
target_dir='/root/python/'
today=target_dir+time.strftime('%Y%m%d')
now=time.strftime('%H%M%S')
if not os.path.exists(today):
os.mkdir(today)
print 'successfully created directory', today
target=today+os.sep+now+'.zip'

zip_command="zip -qr '%s' %s" %(target,' '.join(source))
#run the backup
if os.system(zip_command)==0:
print 'successfully backup to the target',target
else:
print 'failed backup'
这里利用list的可增可减的特性,进过反复的实验,发现使用sys.argv的方法后会把本身的py脚本也包裹到里面如下:

[root@fsailing1 python]# python backup_ver2.py /root/python/test.py /root/python/while.py
backup_ver2.py
/root/python/test.py
/root/python/while.py
['backup_ver2.py', '/root/python/test.py', '/root/python/while.py']
successfully backup to the target /root/python/20120627/203320.zip
所以使用了del的方法进行删除了,这样就会好点儿了。

[root@fsailing1 python]# python backup_ver2.py /root/python/test.py /root/python/while.py
backup_ver2.py
/root/python/test.py
/root/python/while.py
['backup_ver2.py', '/root/python/test.py', '/root/python/while.py']
#######
['/root/python/test.py', '/root/python/while.py']
successfully backup to the target /root/python/20120627/203634.zip
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: