我的文件包含以下内容。在这里,我试图从每一行的开头排除一些字符。
1.apple
2.orange
3.cucumber
4.Cherry
5.mango
lemon
从这个文件我需要排除所有的数字和点(。),然后我需要打印文件中的所有行。
sed -n '/[0-5.]/!p' file
输出
lemon
因为这会从文件中排除0-5
和仅打印字lemon
之间的所有数字。
但我需要使用sed
命令提取所有数字和点?
需要输出:
apple
orange
cucumber
Cherry
mango
你可以请别人帮助我吗?
答案 0 :(得分:3)
sed 方法:
sed 's/^[0-9]\.//' file
^
- 行的开头(锚点)
[0-9]
- 数字范围
\.
- 字面匹配.
字符,应根据其特殊含义使用\
进行转义
输出(正如您所写:“我需要打印所有文件中的行):
apple
orange
cucumber
Cherry
mango
lemon
答案 1 :(得分:1)
你想这样吗?
使用sed
:
sed -n 's/^[0-9]\.//p' file
输出:
$ sed -n 's/^[0-9]\.//p' file
apple
orange
cucumber
Cherry
mango
答案 2 :(得分:0)
sed' s / ^ * [0-9] +。// g'你的文件> newfile中
这适用于任何数字范围。 试试这个。