里面FILE.txt
Interval: 5s
Interval: 3m
Interval: 1h
Interval: 7s
Interval: 5m
Interval: 3h
我想做的事:
- 仅打印包含 s 的单词(因此输出将为 5s 和 7s)
- 仅打印包含 s 或 m 或 h 的单词
这个怎么做?
答案1
尝试这个,
只打印有 s 的单词
echo $TEXT | grep -o '[0-9]*s'
5s
7s
仅打印包含 s 或 m 或 h 的单词
echo $TEXT | grep -o '[0-9]*[smh]'
5s
3m
1h
7s
5m
3h
来自男人:
grep -o
仅打印匹配行的匹配(非空)部分,每个此类部分位于单独的输出行上。
对于您更新的问题:
打印最后一个字段(如果有)
s
awk '$NF~/s/{print $NF}' FILE.txt 5s 7s
打印最后一个字段(如果有
s
orh
或)m
awk '$NF~/s/ || $NF~/m/ || $NF~/h/ {print $NF}' FILE.txt 5s 3m 1h 7s 5m 3h