我有一個批處理文件需要傳遞一個參數,該參數將包含管道和空格。由於空格的原因,傳入時需要將雙引號附加到參數中。我需要去除這些雙引號並回顯參數。通常情況下,使用〜會讓我這樣做,但我認爲有關我傳入的特定參數會導致問題。如果我這樣做:帶空格,雙引號,管道的批處理文件參數
[test1.bat]
call test2.bat "Account|Access Level|Description"
[test2.bat]
echo %1
echo %~1
和運行test1.bat,我得到這樣的輸出:
"Account|Access Level|Description"
'Access' is not recognized as an internal or external command, operable program or batch file.
那麼如何刪除雙引號並仍然有可用的變量?
它工作!非常感謝!你能告訴我爲什麼它有效嗎?當我禁用或啓用「延遲擴展」時,我在做什麼? – SuperNES 2011-03-09 15:18:26
@SuperNES:我編輯我的帖子來解釋一下 – jeb 2011-03-09 16:13:02
你會如何通過一個雙引號?每當我嘗試調用像'。\ blah.cmd「asdf」「123」'這樣的批處理文件時,'echo!str!'輸出兩個雙引號而不是一個。 – binki 2017-03-17 17:42:27