作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个脚本,我已经使用了一段时间,可以轻松地将文件上传到我的服务器。它已经运行了很长时间,但我无法让它在我的新台式电脑上运行。
代码很简单:
import os.path
import sys
import os
from ftplib import FTP
host = ""
acc = ""
pw = ""
filepath = sys.argv[1]
if (not os.path.isfile(filepath)):
x = input("ERROR, invalid filepath")
exit()
filename = os.path.basename(filepath)
file_object = open(filepath, 'rb')
ftp = FTP(host)
ftp.login(acc, pw)
ftp.storbinary('STOR ' + filename, file_object)
ftp.quit()
file_object.close()
我将其运行为:
file_uploader.py backup.sql
我收到以下错误:
Traceback (most recent call last):
File "C:\Users\Admin\Desktop\file_uploader.py", line 12, in
filepath = sys.argv[1]
IndexError: list index out of range
我不确定为什么它会给我一个找不到第一个命令行参数的错误,即使我将一个命令行参数传递给了脚本。
我正在运行带有 Python 2.7.2 的 Windows 7 64 位
谢谢
最佳答案
您在注册表中的 .py 关联不正确。末尾缺少 %*
。
关于Python sys.argv 超出范围,不明白为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7690150/
我是一名优秀的程序员,十分优秀!