Я пишу сценарий, который требует номер версии Bash в простом коротком формате.
Я знаю о bash --version
, но это дает длинный вывод:
GNU bash, version 4.2.10(1)-release (i686-pc-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Это может быть сокращено до части, которую я хочу, 4.2.10
, этим:
bash --version | grep "bash" | cut -f 4 -d " " | cut -d "-" -f 1 | cut -d "(" -f 1
Тем не менее, такое чувство, что это может привести к поломке, если это сообщение хоть немного изменилось по какой-либо причине.
Есть ли лучший способ сделать это, и что это лучше?