bat在txt文本指定行的头尾插入内容?

bat在txt文本指定行的头尾插入内容?,第1张

复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行

<# :

cls&echo off&cd /d "%~dp0"

rem 在一个txt文件的第几行/某一行/指定行的开头和末尾添加/插入内容

set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4

title %#% +%$%%$%/%_% %z%

powershell -NoProfile -ExecutionPolicy bypass "[IO.File]::ReadAllText('%~f0',[Text.Encoding]::GetEncoding('GB2312'))|Invoke-Expression"

echo%#% +%$%%$%/%_% %z%

pause

exit

#>

$file="xxx.txt"

$findline=32

$prefix="111"

$suffix="222"

if(-not (test-path -liter $file)){write-host ('"'+$file+'" 未找到')exit}

$enc=[Text.Encoding]::GetEncoding('GB2312')

$text=[IO.File]::ReadAllLines($file, $enc)

for($i=0$i -lt $text.count$i++){

    if(($i+1) -eq $findline){$text[$i]=$prefix+$text[$i]+$suffix}

}

[IO.File]::WriteAllLines($file, $text, $enc)

不清楚你的实际文件/情况,仅以问题中的样例/说明为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行

<# :

cls&echo off

rem 对当前目录下所有txt文本文件内每一行的行首/开头插入/添加指定字符串内容

set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4

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

cd /d "%~dp0"

set "newfolder=#result"

if not exist "%newfolder%" md "%newfolder%"

powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::GetEncoding('GB2312')))) -Args '%~f0'"

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

pause

exit

#>

$insertword="ttt="

$newfolder=get-item -liter $env:newfolder

$self=get-item -liter $args[0]

$path=$self.Directory.FullName

$files=@(dir -liter $path|?{('.txt' -eq $_.Extension) -and ($_ -is [System.IO.FileInfo])})

if($files.length -ge 1){

$enc=[Text.Encoding]::GetEncoding('GB2312')

write-host $files[0].Name

$arr=New-Object -TypeName System.Collections.ArrayList

$text=[IO.File]::ReadAllLines($files[0].FullName,$enc)

for($j=0$j -lt $text.length$j++){

$line=$insertword+$text[$j]

[void]$arr.add($line)

}

$newfile=$newfolder.FullName+'\'+$files[0].Name

[IO.File]::WriteAllLines($newfile,$arr,$enc)

}

用软件Replace Pioneer可以批量在文件头尾添加内容:

1. 打开菜单Tools->Batch Runner

2. 把要处理的文件拖拽到Batch Runner窗口中。

3. 点击Fast Replace按钮

1) 点击Add,在Search输入$(表示结尾),在Replace输入要添加的内容(可以多行),点击ok

2) 如果添加的内容有特殊字符,需要在特殊字符(比如$)前面加反斜杠(比如\$)。

3) 点击Start即可。

注意要备份源文件,以防 *** 作失误

英文还可以的话可以看这个例子:How to add specified text to the begin and end of many text files?


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11897917.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存