2024-09-24 22:28:05 发布
网友
我有一个以下格式的文件:
output data #comment1 #note3 #message5 #email2 1 5 7 10 4 1 2 6 1
我想删除第一行(包含单词输出)和所有注释掉的行。最终文件应如下所示:
1 5 7 10 4 1 2 6 1
有没有一种简单的方法可以使用shell和/或python来实现这一点?提前感谢您的帮助!你知道吗
下面是一个使用Python的解决方案。我不确定你是否想把内容存回去。如果这样做,只需将结果字符串写回文件。你知道吗
打开文件并首先读取其内容:
In [8]: with open("file", "r") as f: ...: contents = f.read() ...:
然后按换行符拆分行,并删除所有以注释开头的行:
In [11]: mod_contents = [row for row in contents.split('\n') if not row.startswith("#")]
然后连接结果行:
In [14]: "\n".join(mod_contents[1:])
使用sed:
sed
sed '1d;/^[[:space:]]*#/d' file
1d
/^[[:space:]]*#/d
#
下面是一个使用Python的解决方案。我不确定你是否想把内容存回去。如果这样做,只需将结果字符串写回文件。你知道吗
打开文件并首先读取其内容:
然后按换行符拆分行,并删除所有以注释开头的行:
然后连接结果行:
使用
sed
:1d
->;删除第一行/^[[:space:]]*#/d
->;删除所有以#
开头的行,可以选择前面加空格相关问题 更多 >
编程相关推荐