2017-05-23 19 views
1

私は遠隔地にFTPファイルをしようとしています。しかし、ここに私が直面している問題があります。FTPユーザー名| (パイプ)Windowsのバッチファイル

以下のスクリプトを使用すると、リモートサーバーにログインできますが、そこにファイルを置くことができません。アクセスが拒否されました。

echo user domain/username> ftp.txt 
echo password>> ftp.txt 
echo cd remotepath>> ftp.txt 
echo put FTPTest.txt>>ftp.txt 
echo quit>> ftp.txt 

ftp -n -s ftp.txt Servername>ftp_logs.txt 

del ftp.txt 

コマンドプロンプトからログインしようとしました。ユーザー名がServername|domain/usernameの場合は正常にFtpされました。

スクリプトを以下のように変更しましたが、スクリプトは実行されていません。あなたはそれがWindowsで特別な意味を持っているとして、|をエスケープする必要が

手がかりを検索
echo user Servername|domain/username> ftp.txt 
echo password>> ftp.txt 
echo cd remotepath>> ftp.txt 
echo put FTPTest.txt>>ftp.txt 
echo quit>> ftp.txt 

ftp -n -s ftp.txt Servername>ftp_logs.txt 

del ftp.txt 

...

答えて

2

echo user Servername^|domain/username> ftp.txt 

上記はあなたの

user Servername|domain/username 
を取得します ftp.exe

+0

これは機能しています。エスケープする必要がある他の特殊文字はありますか? –

+1

https://stackoverflow.com/a/37336554/850848をご覧ください。 –

関連する問題