BAT ---- 修改後綴名,刪除指定文件內的滿足特定條件的最後一行


轉載請聲明,本文來自:https://blog.csdn.net/shijianduan1/article/details/105719641


本腳本作用:

  • 將.prc文件後綴名,改成 .sql
  • 刪除文件最後一行 “/”符號(oracle導出的prc文件是有的),會改變文件的更新日期
@echo off
echo "修改後綴名,及刪除最後一行"
echo.
:: 將文件後綴名改成sql,是的只有這麼一行代碼
ren *.prc *.sql

setlocal enabledelayedexpansion
rem 遍歷sql類型的文件
for %%i in (*.sql) do (
		set "f=%%i"
		set "temp="
		rem 記錄文件的內容
		for /f "usebackq delims=" %%j in ("!f!") do (
			rem echo %%j
			set/a n+=1
			set "temp=%%j"
		)
		:: 判斷最後一行是否是斜槓,是的話行數-1,(從而實現刪除最後一行的效果)
		if "!temp!" equ "/" (
			echo get: "!temp!"
			set/a n-=1
		)
		:: 將正常數據返回
		for /f "delims=" %%m in ('"type "!f!"|more& cd. 2^>!f!"') do (
			rem echo %%m
			set/a x+=1&if !x! leq !n! echo;%%m>>!f!
		)
		set/a n=0,x=0
)
pause 

看下關於 ren 命令的 API說明:

重命名文件。

RENAME [drive:][path]filename1 filename2.
REN [drive:][path]filename1 filename2.

請注意,你不能爲目標文件指定新的驅動器或路徑。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章