Python学习笔记--关于备份脚本

学习资源:《简明 python 教程》http://linux.chinaitlab.com/manual/Python_chinese/ch10s02.html

在学习这章时遇到了一个问题,记录如下:

首先书上的代码:

#!/usr/bin/python
# Filename: backup_ver1.py

import os
import time

# 1. The files and directories to be backed up are specified in a list.
source = ['/home/swaroop/byte', '/home/swaroop/bin']
# If you are using Windows, use source = [r'C:\Documents', r'D:\Work'] or something like that

# 2. The backup must be stored in a main backup directory
target_dir = '/mnt/e/backup/' # Remember to change this to what you will be using

# 3. The files are backed up into a zip file.
# 4. The name of the zip archive is the current date and time
target = target_dir + time.strftime('%Y%m%d%H%M%S') + '.zip'

# 5. We use the zip command (in Unix/Linux) to put the files in a zip archive
zip_command = "zip -qr '%s' %s" % (target, ' '.join(source))

# Run the backup
if os.system(zip_command) == 0:
    print 'Successful backup to', target
else:
    print 'Backup FAILED' 

按照上面的代码敲了一遍,改了相应的目录,结果却是遇到了错误:

zip error: Nothing to do! (try: zip -qr /home/zlc/LS/20120504225612.zip . -i /home/zlc/ABC/home/zlc/DEF)
Backup FAILED

Google之,发现别人似乎都能正常的执行,怎么自己就出错了呢,大惑不解。

当然,首先想到的是source那里出问题了,但是又不知道source的格式是怎样的,多次尝试后问题依旧。这时发现错误提示中两个目录是连在一起的,可能就是这里出错了,于是将source改为:

source = ['/home/zlc/ABC',  ' /home/zlc/DEF']

也就是在下一个目录前加一个空格,试执行,问题解决了。

不过还是不明白,既然有逗号隔开,为什么还要加一个空格呢???

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值