我有一个文件夹(essa é nova pasta
),里面有多个.txt文件
C:\xml\UPLOAD\essa é nova pasta\35160101660296000130550020000540011858610314.txt
该文件夹是一个具有重音(essa é a nova pasta
)的名称,并创建了一个脚本来生成所有.txt文件的列表,但看起来像这样:
C:\xml\UPLOAD\essa ‚ nova pasta\35160101660296000130550020000540011858610314.txt.
我需要创建一个FTP脚本,从.txt文件列表中进行put。上面生成的。我使用FOR命令生成列表,但它出现了这样:
user
password
put "C:\xml\UPLOAD\essa ‚ nova pasta\35160101660296000130550020000540011858610314.txt" /content/UPLOAD/35160101660296000130550020000540011858610314.txt
bye
他发出一条消息,说该文件不存在,因为它无法识别文件夹的名称(essa ‚ nova pasta
)
我需要将FTP脚本退出作为文件夹名称“这是新文件夹”,即使用正确的名称并正确管理我的FTP脚本,如下所示:
user
password
put "C:\xml\UPLOAD\essa é nova pasta\ 35160101660296000130550020000540011858610314.txt" /content/UPLOAD/35160101660296000130550020000540011858610314.txt
bye
如何解决这个问题?
答案 0 :(得分:0)
如果您的所有文件都来自“C:\ xml \ UPLOAD \essaénovapasta”,那么您可以(一次,在顶部)运行
lcd "C:\xml\UPLOAD\essa é nova pasta\
这样你就不会在for
循环中操纵重音字符。
然后你的put语句将如下所示:
put 35160101660296000130550020000540011858610314.txt /content/UPLOAD/35160101660296000130550020000540011858610314.txt
如果您的所有文件都需要在远程目录/content/UPLOAD/
中结束,那么您可以通过在ftp命令中更改为该目录来进一步简化:
cd /content/UPLOAD
然后你的put语句如下所示:
put 35160101660296000130550020000540011858610314.txt
您不需要以这种方式指定文件名两次。 所以转移这些文件:
C:\xml\UPLOAD\essa é nova pasta\35160101660296000130550020000540011858610314.txt
C:\xml\UPLOAD\essa é nova pasta\anotherfile.txt
C:\xml\UPLOAD\essa é nova pasta\yetanotherfile.txt
C:\xml\UPLOAD\essa é nova pasta\onemorefile.txt
到远程服务器的目录/content/UPLOAD
:
user
password
lcd "C:\xml\UPLOAD\essa é nova pasta\"
cd /content/UPLOAD
put 35160101660296000130550020000540011858610314.txt
put anotherfile.txt
put yetanotherfile.txt
put onemorefile.txt
bye