[PATCH 22/22] ver_linux: proc/modules, limit text processing to 'sed'

Alexander Kapshuk
2015-10-12T18:41:19Z

This patch is more of a personal preference, rather than a fix for a problem.

The current implementation used a combination of both 'cat' and 'sed'
to generate an unsorted list of kernel modules separated by while space.

The proposed implementation uses 'sort' and 'sed' to generate a sort
list of kernel modules separated by while space.

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.kapshuk@gmail.com>
---
scripts/ver_linux | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/scripts/ver_linux b/scripts/ver_linux
index ae426c2..024a11a 100755
--- a/scripts/ver_linux
+++ b/scripts/ver_linux
@@ -178,7 +178,16 @@ awk '/version/{
substr($0,RSTART,RLENGTH))
}'

-if [ -e /proc/modules ]; then
- X=`cat /proc/modules | sed -e "s/ .*$//"`
- echo "Modules Loaded "$X
-fi
+test -e /proc/modules &&
+sort /proc/modules |
+sed '
+ s/ .*//
+ H
+${
+ g
+ s/^\n/Modules Loaded\t\t/
+ y/\n/ /
+ q
+}
+ d
+'
--
2.4.9