我有这样的文件:
90 (160/180)
我需要删除()
包含()
.
输出应该是:90
这些行有不同的数字,例如:
88 (155/190),
47 (143/188)
我怎样才能用 sed 做到这一点?
答案1
sed 's/ .*//'
将删除第一个空格之后的所有内容(括号之前及之后),并且sed 's/ ([^)]*)//'
仅删除括号和前面的空格(表达式([^)]*)
匹配左括号,后跟不包含右括号的任何字符串,然后是右括号)。
测试:
$ sed 's/ .*//' <<<"90 (160/180)"
90
$ sed 's/ ([^)]*)//' <<<"90 (160/180)"
90