このコード スニペットに問題があります。
import optparse
parser = optparse.OptionParser(version=__version__,
usage="%prog [options] file1 ... host[:dest]",
description=main.__doc__)
parser.add_option("-c", "--config", help="Specify an alternate config "
"file. Default = '%s'" % config_file)
parser.add_option('-l', '--log-level', type="choice",
choices=LOG_LEVELS.keys(),
help="Override the default logging level. Choices=%s, Default=%s" %
(",".join(LOG_LEVELS.keys()), LOG_LEVEL))
parser.add_option("-o", "--overwrite", action="store_true",
help="If specified, overwrite existing files at destination. If "
"not specified, throw an exception if you try to overwrite a file")
parser.add_option('-s', "--speed", action="store_true", \
help="If specifed, print the data transfer rate for each file "
"that is uploaded (infers verbose option)")
parser.add_option('-v', '--verbose', action="store_true",
help="If specified, print every file that is being uploaded and every "
"directory that is being created")
parser.add_option("-u", "--user", help="The username to use for "
"authentication. Not needed if you have set up a config file.")
parser.add_option("-p", "--password", help="The password to use for "
"authentication. Not needed if you have set up a config file.")
parser.set_defaults(config=config_file, log_level=LOG_LEVEL)
options, args = parser.parse_args()
print (args)
ご覧のとおり、ヘブライ語の名前付きファイルで実行しているテストの引数を出力すると、出力結果には ['/root/mezeo_sdk/1/\xfa\xe5\xeb\xf0\xe9\xfa \xf2\ xe1\xe5\xe3\xe4.xlsx', 'hostname'] /root/mezeo_sdk/1/"תוכנית עבודה.xlsx" の代わりに
また、スクリプトがファイルをサーバーにアップロードした後の最終結果 (ファイル名が渡された方法) は次のとおりです: http://i.imgur.com/pP6fA.png
ファイル名自体はLinuxソースで適切です。自分のコンピューターにSCPすると問題ないように見えますが、Pythonスクリプトを使用してファイルサーバーに転送することは一度もありません。
また、問題がファイル サーバー側にあるとは考えていません。Web インターフェースを使用してヘブライ語の名前付きファイルをアップロードすれば問題ないからです。
問題は optparse ライブラリの使用にあると思います。