就如何用批處理命令刪除某個資料夾下所有檔案中兩個特定字串間的內容

時間 2021-06-07 04:22:57

1樓:匿名使用者

我暈,是用批處理,剛留位置後,寫成個vb的了,不過我這個支援長檔名路徑,呵呵

下面**儲存為處理.vbs也可以執行

folderpath=inputbox("輸入處理的資料夾","輸入處理的資料夾")

'folderpath="f:\新建資料夾"

set fso=createobject("scripting.filesystemobject")

set folder=fso.getfolder(folderpath)

set files=folder.files

for each fl in files

if right(fl,4)=".txt" then

filename=fl

set objfso = createobject("scripting.filesystemobject")

set objfile = objfso.opentextfile(filename, 1)

strcontents = objfile.readall

objfile.close

if cbool(instr(strcontents,"cde")) and cbool(instr(strcontents,"fgh")) then

arrpath1=split(strcontents,"cde")

arrpath2=split(strcontents,"fgh")

arrpath3=arrpath1(0)&chr(10)&arrpath2(1)

set fso=createobject("scripting.filesystemobject")

set file=fso.opentextfile(filename, 2,ture)

file.writeline(arrpath3)

file.close

end if

end if

next

msgbox("成功!")

2樓:匿名使用者

@echo off&setlocal enabledelayedexpansion

for /r "d:\abc\" %%a in (*.txt)do (

for /f "tokens=2 delims=cde,fgh" %%1 in ("%%~na")do (

set ".=%%~na"&call set ".=!.:%%1=!"&ren "%%a" "!.!".txt

))echo ok&pause

3樓:匿名使用者

批處理 應該可以實現你的要求 不過這個批處理可能要點時間 除錯好後在給你 現在這裡留個位先 對批處理有興趣吧 一起學習呀

4樓:

直接用檔案管理專家完美實現,用了就知道!

5樓:匿名使用者

txt 批量修改替換器,網上多的是,搜下好了

6樓:

要用專門的工具的 我傳給你?

如何用批處理bat將多個txt檔案中的指定字串刪除? 100

7樓:

不清楚你的實際檔案/情況,僅以問題中的樣例/說明為據

以下**複製貼上到記事本,另存為xx.bat,編碼選ansi,跟要處理的檔案放一起執行

<# :

cls@echo off

rem 根據一個指定文字檔案裡列出的多個字串,將多個txt文字檔案內的這些字串刪除

set #=any question&set @=wx&set $=q&set/az=0x53b7e0b4

title %#% +%$%%$%/%@% %z%

cd /d "%~dp0"

powershell -noprofile -executionpolicy bypass "invoke-command -scriptblock ([scriptblock]::create([io.file]::

readalltext('%~f0',[text.encoding]::default))) -args '%~dp0'"

echo;%#% +%$%%$%/%@% %z%

pause

exit

#>$path=$args[0];

$newfolder=$path+"#result";

$wordsfile=$path+"deletewords.log";

if(-not (test-path -liter $wordsfile));

if(-not (test-path -liter $newfolder));

$files=@(dir -liter $path|?);

$enc=[text.encoding]::default;$n=[char]([int]'56');

$wordslist=[io.file]::readalllines($wordsfile, $enc);

for($i=0;$i -lt $files.length;$i++);

if(($i+1) -le [int]$n.tostring());}

求批處理命令,批量刪除指定文字內含有指定字串的檔案

8樓:

不清楚你的實際檔案/情況,僅以問題中的樣例/說明為據

複製貼上到記事本,另存為xx.bat,編碼選ansi,跟txt檔案放一起執行

@echo off

rem 根據一個txt文字檔案裡列出的檔名(不含副檔名/字尾名)刪除指定目錄/資料夾裡的檔案

set #=any question&set @=wx&set $=q&set/az=0x53b7e0b4

title %#% +%$%%$%/%@% %z%

cd /d "%~dp0"

set "folder=c:\users\administrator\desktop\資料夾"

set "txtfile=訂單號.txt"

if not exist "%folder%" (echo;"%folder%" not found&goto end)

for /f "delims=" %%a in ('type "%txtfile%"') do (

for /f "delims=" %%b in ('dir /a-d/b "%folder%\*%%a*.*" 2^>nul') do (

echo;"%folder%\%%~nxb"

del /a /f /a "%folder%\%%~nxb"))

:end

echo;%#% +%$%%$%/%@% %z%

pause

exit

9樓:依夢琴瑤

@echo off & title 批量刪除指定檔案 by 依夢琴瑤cd /d "%~dp0"

::設定資料夾路徑

set folderdir=test

::設定列表檔案

set list=訂單號.txt

for /f "usebackq delims=" %%a in ("%list%") do if exist "%folderdir%\*%%~a*" del /f /q "%folderdir%\*%%~a*"

pause

儲存為bat字尾名的指令碼檔案,和訂單號.txt放在一起,**中的資料夾路徑請自行修改

如何用 批處理 刪除txt檔案中指定字串後面的所有字元 10

10樓:匿名使用者

1.txt ------ 2.txt **演示:

@echo off&setlocal enabledelayedexpansion

(for /f "tokens=*" %%a in (1.txt) do (

set .=%%a&set .=!.:00000=☆!

for /f "delims=☆" %%b in ('echo !.!')do echo %%b

))>2.txt

pause