本帖最后由 yhcfsr 于 2017-12-25 21:22 编辑
- $SourDir="D:\test4" #设置源目录
- $SymbolStr="¥" #设置标志
-
- Get-ChildItem -Path $SourDir -Filter *.bk -Force -Recurse|Remove-Item
- $fso=(Get-ChildItem -Path $SourDir -Filter *.txt -Force -Recurse)
- foreach($file in $fso){
- $TxtContent=Get-Content -Path $file.FullName
- $n=0
- $outfile=-join($file.FullName,".bk")
- foreach($line in $TxtContent){
- if(($n+1) -lt $TxtContent.Count)
- {
- if($TxtContent[$n+1].Contains($SymbolStr)){$line|Out-File -Append -NoNewline -FilePath $outfile} else{$line|Out-File -Append -FilePath $outfile}
- }else {$line|Out-File -Append -FilePath $outfile}
- $n+=1
- }
- move -Path $outfile -Destination $file.FullName -Force -WhatIf
- }
复制代码 说明:
1.操作对象:源目录所有txt文档
2.文档中含有标志符(如¥,¥¥,¥¥¥等形式),无论标志符在行中任何位置,都会并到上一行末尾,如果与您的目的不符,请慎用
3.默认生成与源文件同名的.bk文件,用记事本可打开查看,仔细确认如果实现了理想的效果,可将代码最后一行的 -WhatIf 删除,重新运行脚本即可对源文件实现修改。此步会修改源文件,且不可逆,谨慎操作。
4.脚本保存为.ps1格式,右键以powershell运行。如果以前没有对powershell安全策略进行过设置,默认禁止执行脚本,如果是这样,看第5点。
5.更改powershell安全策略的方法:管理员身份运行cmd(命令提示符),复制以下命令粘贴到提示符后回车- powershell -c "Set-ExecutionPolicy Unrestricted"
复制代码 6.如果命令有误,到微软官网下载最新版powershell |