unix - 通过 Sed 在文件的一行中搜索两位数

标签 unix sed

我试图找出其中包含两位数的行。例如:

测试.txt

uuLinuxxx
Linux 2011
2011 Linux RedHat
Linux RedHat
2011
2013  2014
2010
/usr/bin
2
Ubuntu 20 world

期望的 OP:Ubuntu 20 世界

我正在使用

sed -n '/[0-9]\{2\}/p' test.txt

但问题是它正在打印所有具有 2 个或更多数字的行。

最佳答案

这可能对你有用(GNU sed):

sed -n '/\b[0-9]\{2\}\b/p' file

或:

sed -nr '/\b[0-9]{2}\b/p' file

或:

sed -r '\b[0-9]{2}\b/!d' file

或:

sed '/\<[0-9]\{2\}\>/!d' file

关于unix - 通过 Sed 在文件的一行中搜索两位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22242449/

相关文章:

c - 如何找到每个用户的磁盘空间使用情况?

c++ - 检测到子进程因操作系统内存不足而被终止

python - 测试 niceness 是否被正确应用

c - 使符号链接(symbolic link)到可执行文件

sed - 提取括号之间的字符串

regex - 具有相同起始位置的相同长度正则表达式替代方案的决胜局

linux - 如何合并 CSV 文件中的两行

unix - 在Vim中插入回车符

linux - 使用 sed 和 pstree 显示正在使用的终端类型

regex - 使用 sed 的大写到小写