如何批量移除文本文件每行末尾的数字?
移除文本文件每行末尾的数字(格式为“名称,数字”)
针对你3800行的文本文件,以下是几种高效的处理方法:
命令行工具快速处理
Linux/macOS(sed)
使用sed命令直接替换每行中逗号及之后的内容:
sed 's/,.*$//' input.txt > output.txt
如果名称中可能包含逗号(仅末尾是“,数字”格式),可以精准匹配数字部分:
sed 's/,[0-9]*$//' input.txt > output.txt
Linux/macOS(awk)
以逗号为分隔符,提取每行第一个字段:
awk -F ',' '{print $1}' input.txt > output.txt
Windows(PowerShell)
用正则替换掉逗号结尾的数字部分:
Get-Content input.txt | ForEach-Object { $_ -replace ',\d+$', '' } | Set-Content output.txt
Python脚本处理(适合灵活扩展)
如果需要更可控的处理逻辑,比如处理编码问题或后续扩展,用Python逐行处理:
with open('input.txt', 'r', encoding='utf-8') as infile, open('output.txt', 'w', encoding='utf-8') as outfile: for line in infile: # 去除换行符后按逗号分割,取第一个元素 cleaned_line = line.strip().split(',')[0] outfile.write(f"{cleaned_line}\n")
注意:处理前建议备份原文件,避免意外数据丢失。
内容的提问来源于stack exchange,提问作者Real Swat
相关产品推荐
相关产品推荐

