我正在处理蝙蝠文件。我有一个像这样的.txt文件-
1: 04000025000 00000008,37 NULNULNULNUL
2: 04000455000 0465346000008,37 NULNULNULNUL
我要删除所有拥有的NUL-
1: 04000025000 00000008,37
2: 04000455000 0465346000008,37
请你帮我吗?
NUL
的字符是\x00
我需要一个蝙蝠代码,该代码在txt文件中查找字符x00
并将其替换为该字符以转到下一行。
赞:
powershell -Command "(MMAI_CONTRAT_20180519.txt) -replace %\x00% , '\n' | Out-File test.txt"
答案 0 :(得分:0)
您的命令中缺少Get-Content
。
提供的文本文件以前是这样的
> (Get-Content MMAI_CONTRAT_20180519.txt)|Format-Hex
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00000000 31 3A 20 20 30 34 30 30 30 30 32 35 30 30 30 20 1: 04000025000
00000010 20 20 20 20 20 20 20 20 20 30 30 30 30 30 30 30 0000000
00000020 38 2C 33 37 20 00 00 00 00 32 3A 20 20 30 34 30 8,37 ....2: 040
00000030 30 30 34 35 35 30 30 30 20 20 20 20 20 20 20 20 00455000
00000040 20 20 30 34 36 35 33 34 36 30 30 30 30 30 38 2C 0465346000008,
00000050 33 37 20 00 00 00 00 37 ....
这应该可以完成工作:
> (Get-Content MMAI_CONTRAT_20180519.txt) -replace '\x00+', "`r`n"|Format-Hex
00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00000000 31 3A 20 20 30 34 30 30 30 30 32 35 30 30 30 20 1: 04000025000
00000010 20 20 20 20 20 20 20 20 20 30 30 30 30 30 30 30 0000000
00000020 38 2C 33 37 20 0D 0A 32 3A 20 20 30 34 30 30 30 8,37 ..2: 04000
00000030 34 35 35 30 30 30 20 20 20 20 20 20 20 20 20 20 455000
00000040 30 34 36 35 33 34 36 30 30 30 30 30 38 2C 33 37 0465346000008,37
00000050 20 0D 0A ..
该命令转义并分批包装:
powershell -nop -c "(Get-Content MMAI_CONTRAT_20180519.txt) -replace '\x00+', \"`r`n\"| Out-File test.txt"