iT邦幫忙

0

批次檔刪除txt檔內部的特定字元

大家好,我桌面上有十個TXT檔,想要用一個批次檔將這十個檔案內所有的"1"字樣都刪掉,請問我該怎麼寫?

可以用一些軟體較簡易的達成此目的 例如 notepad++
他取代功能有同時所有開啟文件中取代的功能
jaco4942 iT邦新手 5 級 ‧ 2017-12-05 22:11:59 檢舉
好,謝謝。但是我的CASE是一般都超過百個檔案,所以想尋找更快的方式。

1 個回答

3
jeles51
iT邦新手 2 級 ‧ 2017-12-04 08:25:30

假設:D:\tmp\txt 裡頭有許多TXT檔案
目的:刪去所有TXT檔案中,含有"1"的內容
作法:用""(空值)去替代"1"

1.準備一個r.ps1 (用記事本貼上另存為ps1副檔名即可)

Get-ChildItem d:\tmp\txt -Filter *.txt | Foreach-Object{
(Get-Content $_.FullName) | 
Foreach-Object {$_ -replace "1", ""} | 
Set-Content $_.FullName
}

2.在cmd下執行
powershell -File r.ps1

看更多先前的回應...收起先前的回應...
jaco4942 iT邦新手 5 級 ‧ 2017-12-04 10:29:19 檢舉

大哥 謝謝你的回復,我先這樣使用。

但其實內容我看不懂,想另外請教大哥:有無推薦的批次檔書籍?

jaco4942 iT邦新手 5 級 ‧ 2017-12-04 10:29:21 檢舉

大哥 謝謝你的回復,我先這樣使用。

但其實內容我看不懂,想另外請教大哥:有無推薦的批次檔書籍?

jeles51 iT邦新手 2 級 ‧ 2017-12-04 10:37:48 檢舉

參考書喔,我都只靠GOOGLE就學不完了,
只要找對關鍵字,大部份都有答案,若沒有就自己試,
每個指令從簡單的開始玩,不懂再上網找其它人的來改,久而久之就會囉,
即使不會自己寫,也要知道怎麼找,我下的關鍵字如下:
cmd remove specific word in text files
參考別人的指令後,我自己一定會再試,
試了沒問題才會提供的,自己多學一點,也幫人一點,共學的概念~

jaco4942 iT邦新手 5 級 ‧ 2017-12-04 20:22:52 檢舉

好,了解,謝謝

77012904 iT邦新手 3 級 ‧ 2017-12-05 23:38:43 檢舉

notepad++ 支援對整個目錄中的檔案做搜尋、取代,所以你幾百幾千個檔案都不是問題。 下載來用就知道了

cpc0935 iT邦新手 2 級 ‧ 2017-12-21 17:03:53 檢舉

UltraEdit也很優

我要發表回答

立即登入回答