Rely on regex to find the version number, rather than rely on numerical input 
to be found in a particular input field.
Proposed implementation also eliminates the necessity to invoke 'grep' + 'sed' 
+ 'awk'.

Tested on:
Gentoo Linux
Debian 6.0.10
Oracle Linux Server release 7.1

Signed-off-by: Alexander Kapshuk <alexander.kaps...@gmail.com>
---
 scripts/ver_linux | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/scripts/ver_linux b/scripts/ver_linux
index 7cc74d1..2e1929f 100755
--- a/scripts/ver_linux
+++ b/scripts/ver_linux
@@ -46,8 +46,12 @@ awk '/[0-9]+([.]?[0-9]+)+/ && !/not found$/{
        substr($0,RSTART,RLENGTH))
 }'
 
-tune2fs 2>&1 | grep "^tune2fs" | sed 's/,//' |  awk \
-'NR==1 {print "e2fsprogs             ", $2}'
+tune2fs 2>&1 |
+awk '/^tune2fs/{
+       match($0, /[0-9]+([.]?[0-9]+)+/)
+       printf("E2fsprogs\t\t%s\n",
+       substr($0,RSTART,RLENGTH))
+}'
 
 fsck.jfs -V 2>&1 | grep version | sed 's/,//' |  awk \
 'NR==1 {print "jfsutils              ", $3}'
-- 
2.4.9

--
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/

Reply via email to