最近在寫windows平台下tomcat的數據采集腳本,發現bat針對空格路徑處理很費勁,就簡單的動了下小心思,自己寫了個辦法,因為我沒真是沒在網上找的更好的辦法,隨說有人說加雙引號,我是要做路徑拼接,這個不能很直接的解決問題
思路
-
無論輸入的路徑是否帶空格或者是否帶雙引號,都按照帶雙引號的來處理,做去除雙引號處理,函數MoveQuotationMarks
-
進行文件路徑的拼接,addFile
-
再次將拼接后的路徑加上雙引號
@echo off
echo please input
set /p filepath=
rem echo %filepath%
rem call:MoveQuotationMarks
rem echo %filepath%
rem call:AddQuotationMarks
rem echo %filepath%
call:addFile web.xml
echo %filepath%
type %filepath% >> 123.txt
:MoveQuotationMarks
set filepath=%filepath:"=%
goto:eof
:AddQuotationMarks
set filepath="%filepath%"
goto:eof
:addFile
call:MoveQuotationMarks
if "%filepath:~-1%"=="/" (
set filepath=%filepath%%1
) else (
if "%filepath:~-1%"=="/" (
set filepath=%filepath%%1
) else (
set filepath=%filepath%\%1
)
)
call:AddQuotationMarks
got:eof