如何从文件夹中的所有文本文件中删除单词? [英] How to remove words from all text files in a folder?
本文介绍了如何从文件夹中的所有文本文件中删除单词?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个这样的代码:
$txt = get-content c:work est 1.i
$txt[0] = $txt[0] -replace '-'
$txt[$txt.length - 1 ] = $txt[$txt.length - 1 ] -replace '-'
$txt | set-content c:work est 1.i
它只从文本文件的第一行和最后一行中删除-
,但我需要对包含超过5k个文本文件的目录树中的所有文本文件执行此操作。我应该如何修改此代码?
文本文件的所有名称都是随机的。
我需要在PowerShell中执行此操作。
这是一个目录树,在c:work est下,将有更多的子文件夹,而不是包含所有文本文件。请帮帮忙。谢谢
推荐答案
通过文件扩展名或某种模式获取所有文件并循环访问它们。假设它是扩展名为.i
的所有文件。尝试:
Get-ChildItem -Path "c:work est" -Filter *.i -Recurse | where { !$_.PSIsContainer } | % {
$txt = Get-Content $_.FullName;
$txt[0] = $txt[0] -replace '-';
$txt[$txt.length - 1 ] = $txt[$txt.length - 1 ] -replace '-';
$txt | Set-Content $_.FullName
}
这篇关于如何从文件夹中的所有文本文件中删除单词?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文