ver_linux: loadkeys, look for numerical input, not field number
'loadkeys -h' no longer prints the version number across all distros, despite the claim to do so in the manpage, which I found to be the case on a Debian Linux system. The proposed implementation utilises the output of 'loadkeys -V' to acquire the version of both 'Kbd' and 'Console-tools'. Tested on: Gentoo Linux Debian 6.0.10 Oracle Linux Server release 7.1 Rely on regex to find the version number, rather than rely on numerical input to be found in a particular input field. Signed-off-by: Alexander Kapshuk <alexander.kapshuk@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
be6bb51a9f
Коммит
7a343234ed
|
@ -147,13 +147,12 @@ awk '/tools/{
|
|||
substr($0,RSTART,RLENGTH))
|
||||
}'
|
||||
|
||||
# Kbd needs 'loadkeys -h',
|
||||
loadkeys -h 2>&1 | awk \
|
||||
'(NR==1 && ($3 !~ /option/)) {print "Kbd ", $3}'
|
||||
|
||||
# while console-tools needs 'loadkeys -V'.
|
||||
loadkeys -V 2>&1 | awk \
|
||||
'(NR==1 && ($2 ~ /console-tools/)) {print "Console-tools ", $3}'
|
||||
loadkeys -V 2>&1 |
|
||||
awk '/[0-9]+([.]?[0-9]+)+/ && !/not found$/{
|
||||
match($0, /[0-9]+([.]?[0-9]+)+/)
|
||||
$0 = substr($0,RSTART,RLENGTH)
|
||||
printf("Kbd\t\t\t%s\nConsole-tools\t\t%s\n",$0,$0)
|
||||
}'
|
||||
|
||||
oprofiled --version 2>&1 | awk \
|
||||
'(NR==1 && ($2 == "oprofile")) {print "oprofile ", $3}'
|
||||
|
|
Загрузка…
Ссылка в новой задаче