簡體   English   中英

批處理文件中帶有百分號的 WinSCP 密碼

[英]WinSCP password with percent sign in batch file

Py 遠程 PC [其登錄密碼無法更改] 很少有特殊字符,特別是百分號 ( % )。 所以我寫的 WinSCP 腳本無法登錄。

根據本文檔,我嘗試了以下操作,但沒有取得任何成功。

我的密碼是admin%^& 我按照上面的文檔修改了密碼,就像這樣admin%25^&

如何轉義 WinSCP 登錄的特殊字符?

C:\Program Files (x86)\WinSCP\WinSCP.com" ^
  /log="C:\!Y!M!D_Log.log" /ini=nul ^
  /command ^
    "open  sftp://admin:admin%25^&@137.55.111.1" ^
    "put *.* %REMOTE_PATH%" ^
    "exit" 

^&真的不需要編碼(雖然它不會造成任何傷害)。 %做的,你正確地做的%25 如果直接在 WinSCP 命令行上指定,它將起作用。 實際問題是%在批處理文件中也有特殊含義,而不僅僅是在 WinSCP 中。 %2被批處理文件的第二個參數替換,甚至在 WinSCP 啟動之前。 如果沒有(第二個)參數提供給批處理文件,WinSCP 會看到admin5^&%2消失了)。

如果要在批處理文件中直接使用% ,則需要將其加倍: admin%%25^&

簡單的方法是讓WinSCP GUI 為您生成一個批處理文件(請注意,它甚至會 [不必要地] 編碼^& )。

這在 WinSCP 常見問題解答中進行了介紹為什么在批處理文件中指定的某些 WinSCP 腳本命令未執行/失敗?

答案是您需要查看 UTF-8 圖表並替換字符。

所以 admin%^& 現在是 admin%25%5e%26

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM