
批處理如何刪除文件中指定位置和內容的兩個字符之間的內容如何用批處理 刪除兩個字符之間的內容(多行)?例如:G01X-3.0Y0.8G01X0.0Y99.2G01X350.0Y0.0G01X4.0Y0.0M03G40(PART RIPCUT)G00x23.8Y-1187.6M04G01X0.0Y1500.0M03(BLOCK)G00X-1937.6Y-1500.0(END OF SHEET)(END OF PROGRAM)M30 (RIPCUT)和(BLOCK)之間的行文件夾D:CNC里放有許多.B3文件,需要批處理修改上面的代碼。但有的文件沒有(PART RIPCUT)和(BLOCK)及其之間的內容,這些文件不做修改。請各位朋友幫忙
這個批處理bat,解決了上面的問題,能刪除PARTBLOCK這兩個字符間的內容。(END OF SHEET)M30G01X-3.0Y0.8G01X0.0Y99.2G01X350.0Y0.0G01X4.0Y0.0M03G40(PART RIPCUT)(BLOCK)G00X-1937.6Y-1500.0(END OF PROGRAM)但是如果我把PART改成G40,BLOCK改成G00X卻無法刪除這兩個字符間的內容。文件內容不變。如果我把PART改成G40,BLOCK改成M30卻無法刪除這兩個字符間的內容,而且文件內容還增加了。如下。G01X-3.0Y0.8G01X0.0Y99.2G01X350.0Y0.0G01X4.0Y0.0M03G40(PART RIPCUT)G00x23.8Y-1187.6M04G01X0.0Y1500.0M03(BLOCK)G00X-1937.6Y-1500.0(END OF SHEET)(END OF PROGRAM)M30這個批處理文件能不能改成刪除txt文件中任意指定位置和內容的兩個字符之間的內容?不懂每句實際意義的菜鳥求助,謝謝。nclick="copycode($('code0'));">復制代碼
- @echo off&setlocal enabledelayedexpansion
- for /f delims= %%a in ('dir /s/b *.b3') do (
- cd.>%%a_
- for /f tokens=1,2 delims=: %%i in ('findstr /n . %%a') do (
- set var=%%j
- if not defined n echo %%j
- if defined m echo %%j
- if !var:~1,4!==PART set n=%%i
- if !var:~1,5!==BLOCK set m=%%i & echo %%j
- ) >> %%a_
- set n=
- set m=
- move %%a_ %%a
- )
- exit

