如何使用sed删除前导数字? [英] How to use sed to delete leading digits?
问题描述
我有一个文件:
$ cat file
1 Fred
2 Fred3
3 Fred3
4 Fred3
5 Fred3
6 Fred3
7 Fred3
8 Fred3
9 Fred3
10 Fred3
11 Fred3
12 Fred288
我要删除开头的数字,输出应如下所示:
I want to delete the leading numbers, the output should be like this:
$ cat file
Fred
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred288
我如何使用sed实现这个目标?
How can I achieve this goal using sed?
推荐答案
使用sed
:
sed 's/^[0-9]\+ //' file
Fred
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred3
Fred288
执行sed -i 's/^[0-9]\+ //' file
将更改存储回文件.
Do sed -i 's/^[0-9]\+ //' file
to store the changes back to the file.
我也建议为此使用cut
cut -d' ' -f2 file
选项:
-d,--delimiter = DELIM使用DELIM代替TAB作为字段分隔符
-d, --delimiter=DELIM use DELIM instead of TAB for field delimiter
-f,--fields = LIST仅选择这些字段;也打印任何行 不含分隔符,除非 -s选项已指定
-f, --fields=LIST select only these fields; also print any line that contains no delimiter character, unless the -s option is specified
这篇关于如何使用sed删除前导数字?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!