我試圖創建一個批處理文件來搜索.pst文件,然後將這些文件移動到特定位置。到目前爲止,這是我的。請幫忙。如何製作路徑變量,然後移動該文件
cd \
setlocal enabledelayedexpansion
for /r %%i in (*.pst) do (
::echo %%~i
set MyPath=%i%
move "%MyPath%" "C:\users\zack.vigrass\desktop\"
)
endlocal
PAUSE
編輯:我沒有意識到我沒有問一個問題。我主要是問爲什麼它返回一個空白文件,而不是預期的.pst文件。
爲什麼不直接'移動%% i'?我想'%i%'在你的例子中只是一個錯字?如果所有這些都不適用:請說明您的具體問題,目前您只是陳述事實而不提問。 – Marged
着名的[延遲擴展陷阱](http://stackoverflow.com/a/30284028/2152082)的另一個受害者...(當然,這種錯字,那@Marged指出) – Stephan
設置「MyPath = %%我」 (用qoutes和'%'糾正),所以任何尾隨空格將不再成爲'MyPath'值的一部分... – aschipfl