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樓:匿名使用者
@echo off&setlocal enabledelayedexpansion
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=
if "!input!"=="y" set/a del_=1&goto :function1
if "!input!"=="n" set/a del_=2&goto :function1
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到了這個問題,已通過這條命令解決。
如何用批處理批量刪除文字文件的內容裡面每行的前若干個字
7樓:匿名使用者
嗯,就是這樣簡單。
@echo off
set fn=a.txt
(for /f "tokens=1*" %%i in ('type "%fn%"') do echo %%j)>temp.txt
move /y temp.txt "%fn%"
8樓:匿名使用者
以空格作為分割符取第二列即可
9樓:風元素精靈
要怎麼刪,每行前刪除多少個字元
10樓:匿名使用者
@回聲關閉
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檔案,所以不要多跑。
11樓:匿名使用者
簡單,選定要刪的內容,點右鍵剪下即可
12樓:匿名使用者
所示說明不夠詳細,前幾個字元是什麼規律,是有指定分隔符,還是指定長度???
批處理顯示文字中重複出現的內容,批處理比對多文字檔案的 找出相同內容另存為乙個文字
你太想當然了。批處理最不擅長的就是進行字串處理。建議你還是學乙個sed或者gawk之類的專門用來處理字串的工具的用法。需要學正規表示式,太麻煩,平常用不到,好不容易學會了,幾天就忘了。echo off setlocal enabledelayedexpansion for f tokens i in...
批處理命令根據文字裡面內容生成新的文字
複製貼上到記事本,另存為xx.bat,編碼選ansi,跟要處理的檔案放一起執行 echo off rem 根據乙個指定的txt檔案裡的每一行內容建立 生成多個txt檔案 title z cd d dp0 for f tokens 1 delims a in type a.txt do echo a ...
批處理按條件批量移動檔案,bat批處理,根據清單中的檔名將多個檔案移動到另外乙個路徑下,如何批量處理?非常感謝!
echo off setlocal enabledelayedexpansionfor i in txt do set str ni copy i b str 1 以上為 放在資料夾a裡執行,如果不不行的話,吧.b 改成b資料夾的相對路徑 好辦,稍等,大概要10分鐘內,如果你還有要補充的,繼續追問你...