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哒 :-)

4 thoughts on zip I/O error: Invalid argument?

  1. 推荐用 zipfile,比 os.system 灵活:) BTW,我在 Google Reader 里看不到你的代码:(

  2. @2ndboy,
    这些代码是通过插件显示出来的,估计没有被输出到RSS里去 :-) 我去找找有没有解决办法。
    另外,谢谢关于那个zipfile的提示 ;-)

  3. 这个插件很好!
    我看看如果能调成暗色背景我就更喜欢了

发表评论

电子邮件地址不会被公开。 必填项已用*标注