如何获得程序的版本号?管成grep

时间:2015-09-19 14:17:43

标签: linux bash grep

rsync --version

给出了很多信息,但我只想抓住第一行

rsync  version 3.1.1

怎么做?我试图管道进入grep,但我不能

2 个答案:

答案 0 :(得分:4)

有很多方法可以分割这个馅饼。如果你想要整个第一行,你可以使用以下任何一个:

rsync --version | head -n 1
rsync --version | awk NR==1
rsync --version | sed -n 1p
rsync --version | grep '^rsync *version'

如果你只想要没有其余部分的版本号,那就不难了,但这取决于你想要的那一行。在我的Mac上,版本行显示rsync version 2.6.9 protocol version 29,天真的抓取可能会产生29 - 可能不是你想要的。以下任一项都将仅输出2.6.9

rsync --version | awk 'NR==1 {print $3}'
rsync --version | sed -n '1s/^rsync *version \([0-9.]*\).*$/\1/p'

答案 1 :(得分:2)

如果您只需要使用head命令

获取第一行输出
 rsync --version | head -1