[英]Powershell to delete lines in a txt file within a folder
好的。 我已经在测试 ChatGPT 以帮助我创建一个 PowerShell 脚本来删除文件夹中少于 48 个字符的 txt 文件中的行,以及 append 文件名末尾的 A:例如,sys20221224.txt - > sys20221224A.txt。
我知道我很接近。 这是我到目前为止所拥有的:
Get-ChildItem -Path "C:\temp\powershellTest" -Filter "*.txt" | ForEach-Object {
$file = $_.FullName
$newFile = "$($file.substring(0,$file.lastindexof('.')))A.txt"
Get-Content -Path $file | Where-Object {$_.length -ge 48} | Out-File -FilePath $newFile
}
它有点工作,但 50MB 的文件现在是 100MB。 少了 20k 行,但文件更大。
$list = Get-ChildItem -Path "C:\temp\powershellTest" -Filter "*.txt" Set-Location "C:\temp\powershellTest"
ForEach ($l in $list) {
if ($l.length -lt 48){
Clear-Content $l -Verbose
Rename-Item $l ((($l.Name)).ToString() + "A")
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.