1樓:匿名使用者
@echo off
::下一行指定行數 hn 和刪除幾字元 sn 如刪行尾寫成負數set/a hn=7,sn=3
if %sn% lss 0 set "sn=,%sn%"
for %%i in (*.txt)do (echo %%i
(for /f "tokens=1* delims=:" %%j in ('findstr/n .* "%%i"')do (
if %%j equ %hn% (
set "h=%%k"
if defined h (
setlocal enabledelayedexpansionset "h=!h:~%sn%!"
echo/!h!
endlocal)else echo/
)else echo/%%k
))>temp.yky
move temp.yky "%%i"
set/a n+=1)
echo 共處理 %n% 個檔案
pause
2樓:匿名使用者
下邊**有註釋,你在把**儲存成bat檔案的時候要把註釋去掉,批處理檔案要和 文字檔案放在同一目錄下
set /a n=7 第七行,這個數字你自己改
set /a m=0
cd.>temp.txt
setlocal enabledelayedexpansion
for /f "tokens=* delims=" %%a in ("廉政英雄.txt") do (
set /a m=!m!+1
if "!m!"== "!n!" (
set str=%%a
set str=!str:~0,-3! "-3"表示要去掉倒數3個字,你自己改
要去掉前邊3個字 就用 set str=!str:~3!
echo !str!>>temp.txt
) else (
echo %%a>>temp.txt))
endlocal
del 廉政英雄.txt /f/q
ren temp.txt 廉政英雄.txt
3樓:匿名使用者
title 刪除某行前面或者後面幾個位元組
::先得出共有多少行
set /a num_max=0
for /f "delims=" %%a in (廉政英雄.txt) do (
set /a num_max+=1
):shuruhang
echo.輸入要刪除行:
set /p num_hang=
if !num_hang! leq !num_max! goto :yesorno
echo.輸入有誤!重新輸入&ping -n 2 127.1>nul&goto :shuruhang
:yesorno
::用del_=1或者2來識別刪除前面位元組或者後面位元組
set/a del_=0
echo.刪除前面位元組輸入y,後面位元組輸入n?
set/p input=
echo.輸入錯誤&ping -n 3 127.1>nul&goto :yesorno
::這個輸入刪除位元組數
:function1
echo.請輸入刪除位元組數:
set/p num_bit=
if "!num_bit!" gtr "0" goto :function2
echo.輸入有誤!&ping -n 2 127.1>nul&goto :function1
::對文字進行操作
:function2
set/a num_temp=0
for /f "delims=" %%a in (廉政英雄.txt) do (
set/a num_temp+=1
set str_temp=%%a
if "!num_temp!" equ "!num_hang!" (
if "!input!"=="y" (
echo !str_temp:~%num_bit%!>>temp.txt) else (
echo !str_temp:~0,-%num_bit%!>>temp.txt)
) else (
echo !str_temp!>>temp.txt))
echo.親,處理完畢。&""temp.txt""
我測試成功!祝你好運。
如果對你有幫助,請採納!
批處理bat 批量刪除txt文字指定的行
4樓:繁亭晚操戌
@echo off
setlocal enabledelayedexpansionfor /l %%a in (1,1,1000) do (set /a n=0
for /f %%i in (%%a.txt) do (set /a n+=1
if /i !n!==3 set "var%%a=%%i"))for /l %%a in (1,1,1000) do (echo !var%%a!)
::1.txt中的第三行變專
量為:!var1!
::2.txt中的第三行變數為:!var2!
:: 。。
屬。。。。。。。。。。。。
::1000.txt中的第三行變數為:!var1000!
::萬用字元的使用要看場合。
pause
5樓:匿名使用者
那就不要空行
@echo off
for %%i in (2,4)do set #%%i=y(for /f "tokens=1* delims=:" %%i in ('findstr/n .* "1.
txt"')do (
if not defined #%%i echo;%%j))>"2.txt"
pause
如果要改原檔案回
,最後一行答前插入一行
move "2.txt" "1.txt"
6樓:逝雪藍冰
linux命令copy
(windows下可以安裝一個git):
sed -i '2d' 1.txt
刪除bai1.txt檔案中的du第二行。
find *.txt |xargs sed -i '2d'
批量刪除文zhi件夾中所有的txt檔案的第二行。
我也遇dao到了這個問題,已通過這條命令解決。
有很多txt文件,想批處理,刪除每個文件的第一行和最後一行,有沒有辦法?
7樓:匿名使用者
for %%i in (*.txt) do (set "f=%%i"
for /f "usebackq delims=" %%j in ("!f!") do set/a n+=1
set/a n-=2
for /f "delims=" %%m in ('"type "!f!"|more +1& cd.
2^>!f!"') do set/a x+=1&if !
x! leq !n!
echo;%%m>>!f!
set/a n=0,x=0
)pause
如何用批處理批量刪除文字文件的內容裡面每行的前若干個字
8樓:匿名使用者
嗯,就是這樣簡單。
@echo off
set fn=a.txt
(for /f "tokens=1*" %%i in ('type "%fn%"') do echo %%j)>temp.txt
move /y temp.txt "%fn%"
9樓:匿名使用者
以空格作為分割符取第二列即可
10樓:風元素精靈
要怎麼刪,每行前刪除多少個字元
11樓:匿名使用者
@回聲關閉
setlocal enabledelayedexpansion
for / f「delims =」%%i in('dir / b /廣告*。txt「)做(
集合d =%%科幻&設定n =%%nxi&設定p =%%dpi以與使用echo 0>「!p!統」> nul
for / f「標記= * delims =」%%一個在('「! d「型」)做(集合m =%%一個
如果不是「m:!2,300」==「」(回聲m:!「!p tem」2,300 >>)) 「!d」!br /> del / f / q&仁「!p統」的「n」)
退出說明:每次執行蝙蝠時間將刪除該目錄下的第一個兩個字元txt檔案,所以不要多跑。
12樓:匿名使用者
簡單,選定要刪的內容,點右鍵剪下即可
13樓:匿名使用者
所示說明不夠詳細,前幾個字元是什麼規律,是有指定分隔符,還是指定長度???
批處理怎麼批量提取多個裡的指定內容
這個不用批處理也可以的。用dos命令 把所有的txt放在一個資料夾。然後執行合併所有txt到一個sum檔案命令 copy txt sum.txt 然後開啟sum.txt,ctrl h,替換ctrl h,替換 為空。即可。不清楚你的實際檔案 情況,僅以問題中的樣例 說明為據 複製貼上到記事本,另存為x...
批處理問題如何調換內容,TXT文件批處理問題 如何調換內容
echo off 第一段 調換列位置 for f tokens 1 3 delims a in a.txt do echo b a c a 第二段 刪除行中括號 setlocal enabledelayedexpansionfor f delims i in b.txt do set str i s...
批處理修改文字內容,每一行有13位字元,(如1234567891234),把每一行的前字元,輸出到另文字
把 風音1329 的 改了一下內 setlocal enabledelayedexpansionset fn a.txt for f delims i in fn do set s i echo 容s 10 new fn txt daoecho off setlocal enabledelayede...