The current implementation uses both 'grep' and 'awk' for text processing here, which may be alright as a quick solution to be run on the command line. While in a script, 'sed' or 'awk' would be a better choice. On top of that, the current implementation expects the version number to be found in the last field as seen by 'awk'. Should the output format be different, this approach would no longer be reliable.
The proposed implementation uses 'sed' as a more flexible tool to handle varying output formats. Tested on: Gentoo Linux Debian 6.0.10 Oracle Linux Server release 7.1 Arch Linux openSuSE 13.2 Signed-off-by: Alexander Kapshuk <alexander.kaps...@gmail.com> --- --- linux/scripts/ver_linux.orig 2015-08-30 21:34:09.000000000 +0300 +++ linux/scripts/ver_linux 2015-09-30 22:56:24.369203827 +0300 @@ -68,8 +68,12 @@ ls -l /usr/lib/libg++.so /usr/lib/libstdc++.so 2>/dev/null | awk -F. \ '{print "Linux C++ Library " $4"."$5"."$6}' -ps --version 2>&1 | grep version | awk \ -'NR==1{print "Procps ", $NF}' +ps --version 2>&1 | +sed ' + /version/!d + s/[^0-9.]//g + s/^/Procps\t\t\t/ +' ifconfig --version 2>&1 | grep tools | awk \ 'NR==1{print "Net-tools ", $NF}' -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/