zip I/O error: Invalid argument?

最近不知道为什么有回头开始看”Byte of Python V1.91″ 今天在读到72页“The solution”的时候遇到了一个问题。需要用python来写一段代码,备份系统的某个,或者某些文件夹。

原文的代码是这样的:

[embed_snipt:Ooi]

我做了些许改动来符合我的现实状况:

[embed_snipt:Ooh]

可是,当我在Console中运行backup.py的时候,系统提示“zip I/O error: Invalid argument”… 奇怪了。Google得到的结果大多是当在压缩某个大文件的时候才出现这样的错误。而我的目标文件夹根本就只有5KB而已啊!

于是在“if os.system(zip_command) == 0:”之前加入了一句“print(zip_command)”看一下到底执行的zip命令是什么东西

[embed_snipt:Ooj]

终于,被我看到输出的命令是”zip -qr F:\PJackup\20090327162409.zip F:\PJ\PythonPJ”  我的目标路径变成了乱码…看来是“\b”被转义了…于是把backup变成了Backup。就没有问题啦。

另外,想如果下次还碰到这样的转义状况怎么办? 把路径改成 F:\\PJ\\backup也是一样OK哒 :-)