堆棧溢出不是一個免費的代碼寫入服務。下次請先自己嘗試一下。
請修改此小批處理腳本第三行的文件名和路徑。
@echo off
setlocal EnableDelayedExpansion
set "InputFile=C:\Temp\TestFile.txt"
if not exist "%InputFile%" goto :EOF
set "TempFile=%TEMP%\TestFile.tmp"
if exist "%TempFile%" del "%TempFile%"
for /F "usebackq delims=" %%I in ("%InputFile%") do (
set "Line=%%I"
if "!Line:~-3,1!" == ":" set "Line=!Line:~0,-2!0!Line:~-2!"
if "!Line:~-6,1!" == ":" set "Line=!Line:~0,-5!0!Line:~-5!"
if "!Line:~-9,1!" == "|" set "Line=!Line:~0,-8!0!Line:~-8!"
if "!Line:~-12,1!" == "-" set "Line=!Line:~0,-11!0!Line:~-11!"
if "!Line:~-15,1!" == "-" set "Line=!Line:~0,-14!0!Line:~-14!"
if "!Line:~-18,1!" == "|" set "Line=!Line:~0,-17!0!Line:~-17!"
echo !Line!>>"%TempFile%"
)
move /Y "%TempFile%" "%InputFile%"
endlocal
這個批處理文件將只檢查在相對於線的端部的特定位置的字符等於一個比較,並且預期字符和插入一個前導零,如果不是這種情況,因爲的日期/時間值右排隊排名只有1位數。
爲了解所使用的命令及其工作方式,請打開命令提示符窗口,在其中執行以下命令,並仔細閱讀爲每個命令顯示的所有幫助頁面。
del /?
echo /?
endlocal /?
for /?
goto /?
if /?
move /?
set /?
......這裏最重要的是瞭解替換。
setlocal /?
而且還請參閱Microsoft文章關於Using command redirection operators。
你真的**還在使用MS-DOS嗎? –