mirror of
https://github.com/smxi/inxi.git
synced 2024-11-17 00:31:19 +00:00
(no version change: branche one)
Testing new swap data, nice one damentz
This commit is contained in:
parent
57073c23a1
commit
fec6480dd9
89
inxi
89
inxi
|
@ -1,8 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
########################################################################
|
########################################################################
|
||||||
#### Script Name: inxi
|
#### Script Name: inxi
|
||||||
#### version: 1.0.3-b1-t3
|
#### version: 1.0.4-b1-t1
|
||||||
#### Date: 17 February 2009
|
#### Date: 1 March 2009
|
||||||
########################################################################
|
########################################################################
|
||||||
#### SPECIAL THANKS
|
#### SPECIAL THANKS
|
||||||
########################################################################
|
########################################################################
|
||||||
|
@ -21,6 +21,7 @@
|
||||||
#### Copyright (C) 2005-2007 Michiel de Boer a.k.a. locsmif
|
#### Copyright (C) 2005-2007 Michiel de Boer a.k.a. locsmif
|
||||||
#### inxi version: Copyright (C) 2008-9 Scott Rogers & Harald Hope
|
#### inxi version: Copyright (C) 2008-9 Scott Rogers & Harald Hope
|
||||||
#### Further fixes (listed as known): Horst Tritremmel <hjt at sidux.com>
|
#### Further fixes (listed as known): Horst Tritremmel <hjt at sidux.com>
|
||||||
|
#### Steven Barrett (aka: damentz) - usb audio patch;
|
||||||
####
|
####
|
||||||
#### Current script home page: http://techpatterns.com/forums/about1131.html
|
#### Current script home page: http://techpatterns.com/forums/about1131.html
|
||||||
#### Script svn: http://code.google.com/p/inxi
|
#### Script svn: http://code.google.com/p/inxi
|
||||||
|
@ -105,6 +106,8 @@
|
||||||
#### -! 10 - triggers an update from the primary dev download server instead of svn
|
#### -! 10 - triggers an update from the primary dev download server instead of svn
|
||||||
#### -! 11 - triggers an update from svn branch one - if present, of course
|
#### -! 11 - triggers an update from svn branch one - if present, of course
|
||||||
#### -! 12 - triggers an update from svn branch two - if present, of course
|
#### -! 12 - triggers an update from svn branch two - if present, of course
|
||||||
|
#### -! 13 - triggers an update from svn branch three - if present, of course
|
||||||
|
#### -! 14 - triggers an update from svn branch four - if present, of course
|
||||||
#### -! <http://......> - Triggers an update from whatever server you list.
|
#### -! <http://......> - Triggers an update from whatever server you list.
|
||||||
########################################################################
|
########################################################################
|
||||||
#### VARIABLES
|
#### VARIABLES
|
||||||
|
@ -247,6 +250,8 @@ SCRIPT_VERSION_NUMBER=$( grep -im 1 'version:' $SCRIPT_PATH/$SCRIPT_NAME | gawk
|
||||||
SCRIPT_DOWNLOAD='http://inxi.googlecode.com/svn/trunk/'
|
SCRIPT_DOWNLOAD='http://inxi.googlecode.com/svn/trunk/'
|
||||||
SCRIPT_DOWNLOAD_BRANCH_1='http://inxi.googlecode.com/svn/branches/one/'
|
SCRIPT_DOWNLOAD_BRANCH_1='http://inxi.googlecode.com/svn/branches/one/'
|
||||||
SCRIPT_DOWNLOAD_BRANCH_2='http://inxi.googlecode.com/svn/branches/two/'
|
SCRIPT_DOWNLOAD_BRANCH_2='http://inxi.googlecode.com/svn/branches/two/'
|
||||||
|
SCRIPT_DOWNLOAD_BRANCH_3='http://inxi.googlecode.com/svn/branches/three/'
|
||||||
|
SCRIPT_DOWNLOAD_BRANCH_4='http://inxi.googlecode.com/svn/branches/four/'
|
||||||
SCRIPT_DOWNLOAD_DEV='http://smxi.org/test/'
|
SCRIPT_DOWNLOAD_DEV='http://smxi.org/test/'
|
||||||
KONVI_CFG="konversation/scripts/$SCRIPT_NAME.conf" # relative path to $(kde-config --path data)
|
KONVI_CFG="konversation/scripts/$SCRIPT_NAME.conf" # relative path to $(kde-config --path data)
|
||||||
|
|
||||||
|
@ -904,11 +909,20 @@ get_parameters()
|
||||||
3) B_TESTING_1='true'
|
3) B_TESTING_1='true'
|
||||||
B_TESTING_2='true'
|
B_TESTING_2='true'
|
||||||
;;
|
;;
|
||||||
10) script_self_updater "$SCRIPT_DOWNLOAD_DEV" 'dev server'
|
10)
|
||||||
|
script_self_updater "$SCRIPT_DOWNLOAD_DEV" 'dev server'
|
||||||
;;
|
;;
|
||||||
11) script_self_updater "$SCRIPT_DOWNLOAD_BRANCH_1" 'svn: branch one server'
|
11)
|
||||||
|
script_self_updater "$SCRIPT_DOWNLOAD_BRANCH_1" 'svn: branch one server'
|
||||||
;;
|
;;
|
||||||
12) script_self_updater "$SCRIPT_DOWNLOAD_BRANCH_2" 'svn: branch two server'
|
12)
|
||||||
|
script_self_updater "$SCRIPT_DOWNLOAD_BRANCH_2" 'svn: branch two server'
|
||||||
|
;;
|
||||||
|
13)
|
||||||
|
script_self_updater "$SCRIPT_DOWNLOAD_BRANCH_3" 'svn: branch three server'
|
||||||
|
;;
|
||||||
|
14)
|
||||||
|
script_self_updater "$SCRIPT_DOWNLOAD_BRANCH_4" 'svn: branch four server'
|
||||||
;;
|
;;
|
||||||
http*)
|
http*)
|
||||||
script_self_updater "$OPTARG" 'alt server'
|
script_self_updater "$OPTARG" 'alt server'
|
||||||
|
@ -999,6 +1013,8 @@ show_options()
|
||||||
print_screen_output "-! 10 - Triggers an update from the primary dev download server instead of svn."
|
print_screen_output "-! 10 - Triggers an update from the primary dev download server instead of svn."
|
||||||
print_screen_output "-! 11 - Triggers an update from svn branch one - if present, of course."
|
print_screen_output "-! 11 - Triggers an update from svn branch one - if present, of course."
|
||||||
print_screen_output "-! 12 - Triggers an update from svn branch two - if present, of course."
|
print_screen_output "-! 12 - Triggers an update from svn branch two - if present, of course."
|
||||||
|
print_screen_output "-! 13 - Triggers an update from svn branch three - if present, of course."
|
||||||
|
print_screen_output "-! 14 - Triggers an update from svn branch four - if present, of course."
|
||||||
print_screen_output "-! <http://......> - Triggers an update from whatever server you list."
|
print_screen_output "-! <http://......> - Triggers an update from whatever server you list."
|
||||||
print_screen_output ""
|
print_screen_output ""
|
||||||
fi
|
fi
|
||||||
|
@ -1381,24 +1397,22 @@ get_audio_data()
|
||||||
for usb_proc_file in /proc/asound/*
|
for usb_proc_file in /proc/asound/*
|
||||||
do
|
do
|
||||||
# if lsusb exists, the file is a symlink, and contains an important usb exclusive file: continue
|
# if lsusb exists, the file is a symlink, and contains an important usb exclusive file: continue
|
||||||
if [[ -n "$( which lsusb )" && -L "$usb_proc_file" && -e "$usb_proc_file/usbid" ]]; then
|
if [[ -n $( which lsusb ) && -L $usb_proc_file && -e $usb_proc_file/usbid ]]; then
|
||||||
# send error messages of lsusb to /dev/null as it will display a bunch if not a super user
|
# send error messages of lsusb to /dev/null as it will display a bunch if not a super user
|
||||||
# also, find the contents of usbid in lsusb and print everything after the 7th word on the corresponding line
|
# also, find the contents of usbid in lsusb and print everything after the 7th word on the
|
||||||
# finally, strip out commas as they will change the driver :)
|
# corresponding line. Finally, strip out commas as they will change the driver :)
|
||||||
# lsusb is not contained in some users paths, hardcode it!
|
|
||||||
usb_id=$( cat $usb_proc_file/usbid )
|
usb_id=$( cat $usb_proc_file/usbid )
|
||||||
usb_data=$( lsusb -v 2>/dev/null | grep "$usb_id" )
|
usb_data=$( lsusb -v 2>/dev/null | grep "$usb_id" )
|
||||||
usb_data=$( gawk '{
|
usb_data=$( gawk '{
|
||||||
gsub(/,/, " ", $0)
|
gsub( /,/, " ", $0 )
|
||||||
for( i=7; i<NF; i++) {
|
for( i=7; i <= NF; i++ ) {
|
||||||
printf($i " ")
|
printf( $i " " )
|
||||||
}
|
}
|
||||||
#printf "\n"
|
|
||||||
}' <<< "$usb_data" )
|
}' <<< "$usb_data" )
|
||||||
# this method is interesting, it shouldn't work but it does
|
# this method is interesting, it shouldn't work but it does
|
||||||
#A_AUDIO_DATA=( "${A_AUDIO_DATA[@]}" "$usb_data,snd-usb-audio,," )
|
#A_AUDIO_DATA=( "${A_AUDIO_DATA[@]}" "$usb_data,snd-usb-audio,," )
|
||||||
# but until we learn why the above worked, I'm using this one, which is safer
|
# but until we learn why the above worked, I'm using this one, which is safer
|
||||||
if [[ -n "$usb_data" ]];then
|
if [[ -n $usb_data ]];then
|
||||||
array_count=${#A_AUDIO_DATA[@]}
|
array_count=${#A_AUDIO_DATA[@]}
|
||||||
A_AUDIO_DATA[$array_count]="$usb_data,snd-usb-audio,,"
|
A_AUDIO_DATA[$array_count]="$usb_data,snd-usb-audio,,"
|
||||||
fi
|
fi
|
||||||
|
@ -1835,8 +1849,8 @@ get_graphics_glx_data()
|
||||||
function join(arr, sep) {
|
function join(arr, sep) {
|
||||||
s=""
|
s=""
|
||||||
i=flag=0
|
i=flag=0
|
||||||
for (i in arr) {
|
for ( i in arr ) {
|
||||||
if (flag++) {
|
if ( flag++ ) {
|
||||||
s = s sep
|
s = s sep
|
||||||
}
|
}
|
||||||
s = s i
|
s = s i
|
||||||
|
@ -1848,9 +1862,9 @@ get_graphics_glx_data()
|
||||||
IGNORECASE=1
|
IGNORECASE=1
|
||||||
}
|
}
|
||||||
/opengl renderer/ {
|
/opengl renderer/ {
|
||||||
if ($2 ~ /mesa/) {
|
if ( $2 ~ /mesa/ ) {
|
||||||
# Allow r300 et al, but not the rest
|
# Allow r300 et al, but not the rest
|
||||||
if ($2 ~ / r[3-9][0-9][0-9] /) {
|
if ( $2 ~ / r[3-9][0-9][0-9] / ) {
|
||||||
a[$2]
|
a[$2]
|
||||||
f++
|
f++
|
||||||
}
|
}
|
||||||
|
@ -1858,7 +1872,7 @@ get_graphics_glx_data()
|
||||||
}
|
}
|
||||||
$2 && a[$2]
|
$2 && a[$2]
|
||||||
}
|
}
|
||||||
/opengl version/ && (f || $2 !~ /mesa/) {
|
/opengl version/ && ( f || $2 !~ /mesa/ ) {
|
||||||
$2 && b[$2]
|
$2 && b[$2]
|
||||||
}
|
}
|
||||||
/direct rendering/ {
|
/direct rendering/ {
|
||||||
|
@ -1971,13 +1985,13 @@ get_hdd_data_basic()
|
||||||
{
|
{
|
||||||
local hdd_used=''
|
local hdd_used=''
|
||||||
|
|
||||||
hdd_used=$( df | gawk '
|
hdd_used=$( df --exclude-type=aufs --exclude-type=tmpfs --exclude-type=iso9660 | gawk '
|
||||||
# also handles odd dm-1 type, from lvm
|
# also handles odd dm-1 type, from lvm
|
||||||
/^\/dev\/(mapper\/|[hs]d[a-z][0-9]+|dm[-]?[0-9]+)/ {
|
/^\/dev\/(mapper\/|[hs]d[a-z][0-9]+|dm[-]?[0-9]+)/ {
|
||||||
# this handles the case where the first item is too long
|
# this handles the case where the first item is too long
|
||||||
# and makes df wrap output to next line, so here we advance
|
# and makes df wrap output to next line, so here we advance
|
||||||
# it to the next line for that single case
|
# it to the next line for that single case
|
||||||
if ( NF == 1 ) {
|
if ( NF < 5 && $0 !~ /.*\%/ ) {
|
||||||
getline
|
getline
|
||||||
}
|
}
|
||||||
# if the first item caused a wrap, use one less than standard
|
# if the first item caused a wrap, use one less than standard
|
||||||
|
@ -2010,7 +2024,8 @@ get_hdd_data_basic()
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
|
|
||||||
if [[ $B_PARTITIONS_DIR == 'true' ]];then
|
if [[ $B_PARTITIONS_DIR == 'true' ]];then
|
||||||
A_HDD_DATA=( $( gawk -v hddused="$hdd_used" '
|
A_HDD_DATA=( $(
|
||||||
|
gawk -v hddused="$hdd_used" '
|
||||||
/[hs]d[a-z]$/ {
|
/[hs]d[a-z]$/ {
|
||||||
driveSize = $(NF - 1)*1024/1000**3
|
driveSize = $(NF - 1)*1024/1000**3
|
||||||
gsub(/,/, " ", driveSize)
|
gsub(/,/, " ", driveSize)
|
||||||
|
@ -2018,11 +2033,14 @@ get_hdd_data_basic()
|
||||||
printf( $NF",%.1fGB,,\n", driveSize )
|
printf( $NF",%.1fGB,,\n", driveSize )
|
||||||
}
|
}
|
||||||
# See http://lanana.org/docs/device-list/devices-2.6+.txt for major numbers used below
|
# See http://lanana.org/docs/device-list/devices-2.6+.txt for major numbers used below
|
||||||
# $1 ~ /^(3|22|33|8)$/ && $2 % 16 == 0 {size+=$3}
|
# $1 ~ /^(3|22|33|8)$/ && $2 % 16 == 0 {
|
||||||
|
# size += $3
|
||||||
|
# }
|
||||||
# special case from this data: 8 0 156290904 sda
|
# special case from this data: 8 0 156290904 sda
|
||||||
$1 ~ /^(3|22|33|8)$/ && $NF ~ /[hs]d[a-z]$/ && ( $2 % 16 == 0 || $2 % 16 == 8 ) {
|
$1 ~ /^(3|22|33|8)$/ && $NF ~ /[hs]d[a-z]$/ && ( $2 % 16 == 0 || $2 % 16 == 8 ) {
|
||||||
size += $3
|
size += $3
|
||||||
}
|
}
|
||||||
|
|
||||||
END {
|
END {
|
||||||
size = size*1024/1000**3 # calculate size in GB size
|
size = size*1024/1000**3 # calculate size in GB size
|
||||||
workingUsed = hddused*1024/1000**3 # calculate workingUsed in GB used
|
workingUsed = hddused*1024/1000**3 # calculate workingUsed in GB used
|
||||||
|
@ -2040,7 +2058,8 @@ get_hdd_data_basic()
|
||||||
else {
|
else {
|
||||||
print "NA,-" # print an empty array, this will be further handled in the print out function
|
print "NA,-" # print an empty array, this will be further handled in the print out function
|
||||||
}
|
}
|
||||||
}' $DIR_PARTITIONS ) )
|
}' $DIR_PARTITIONS
|
||||||
|
) )
|
||||||
fi
|
fi
|
||||||
IFS="$ORIGINAL_IFS"
|
IFS="$ORIGINAL_IFS"
|
||||||
}
|
}
|
||||||
|
@ -2352,7 +2371,7 @@ get_partition_data()
|
||||||
# $NF = partition name; $(NF - 4) = partition size; $(NF - 3) = used, in gB; $(NF - 1) = percent used
|
# $NF = partition name; $(NF - 4) = partition size; $(NF - 3) = used, in gB; $(NF - 1) = percent used
|
||||||
## note: by subtracting from the last field number NF, we avoid a subtle issue with LVM df output, where if
|
## note: by subtracting from the last field number NF, we avoid a subtle issue with LVM df output, where if
|
||||||
## the first field is too long, it will occupy its own line, this way we are getting only the needed data
|
## the first field is too long, it will occupy its own line, this way we are getting only the needed data
|
||||||
A_PARTITION_DATA=( $( df -h -T --exclude-type=aufs --exclude-type=tmpfs --exclude-type=iso9660 | gawk '
|
A_PARTITION_DATA=( $( df -h -T --exclude-type=aufs --exclude-type=tmpfs --exclude-type=iso9660 | gawk '
|
||||||
BEGIN {
|
BEGIN {
|
||||||
IGNORECASE=1
|
IGNORECASE=1
|
||||||
}
|
}
|
||||||
|
@ -2387,11 +2406,20 @@ get_partition_data()
|
||||||
' )
|
' )
|
||||||
# now add the swap partition data, doesn't show percent used, someone can figure that in the future
|
# now add the swap partition data, doesn't show percent used, someone can figure that in the future
|
||||||
# don't want to show swap files, just partitions
|
# don't want to show swap files, just partitions
|
||||||
$( swapon -s | gawk '
|
# $( swapon -s | gawk '
|
||||||
/^\/dev\/[hs]d[a-z]/ {
|
# /^\/dev\/[hs]d[a-z]/ {
|
||||||
|
# size = sprintf( "%.2f", $3*1024/1000**3 )
|
||||||
|
# devBase = gensub( /^(\/dev\/)(.+)$/, "\\2", 1, $1 )
|
||||||
|
# print $1 "," size "GB,,,swap," devBase
|
||||||
|
# }' ) )
|
||||||
|
|
||||||
|
$( cat /proc/swaps | grep /dev | gawk '
|
||||||
|
/^\/dev/ {
|
||||||
size = sprintf( "%.2f", $3*1024/1000**3 )
|
size = sprintf( "%.2f", $3*1024/1000**3 )
|
||||||
devBase = gensub( /^(\/dev\/)(.+)$/, "\\2", 1, $1 )
|
devBase = gensub( /^(\/dev\/)(.+)$/, "\\2", 1, $1 )
|
||||||
print $1 "," size "GB,,,swap," devBase
|
used = sprintf( "%.2f", $4*1024/1000**3 )
|
||||||
|
percentUsed = sprintf( "%.0f", ( $4/$3 )*100 )
|
||||||
|
print "swap," size "GB," used "GB," percentUsed "\%,main," devBase
|
||||||
}' ) )
|
}' ) )
|
||||||
IFS="$ORIGINAL_IFS"
|
IFS="$ORIGINAL_IFS"
|
||||||
|
|
||||||
|
@ -2430,6 +2458,8 @@ get_partition_data_advanced()
|
||||||
partition = ""
|
partition = ""
|
||||||
partTemp = ""
|
partTemp = ""
|
||||||
}
|
}
|
||||||
|
# trying to handle space in name
|
||||||
|
# gsub( /\\040/, " ", $0 )
|
||||||
/[ \t]'$mount_point'[ \t]/ && $1 != "rootfs" {
|
/[ \t]'$mount_point'[ \t]/ && $1 != "rootfs" {
|
||||||
# initialize the variables
|
# initialize the variables
|
||||||
label = ""
|
label = ""
|
||||||
|
@ -2498,6 +2528,9 @@ get_partition_data_advanced()
|
||||||
}' )
|
}' )
|
||||||
elif [[ -n $dev_disk_label ]] && [[ -z $dev_item && -n $dev_label ]];then
|
elif [[ -n $dev_disk_label ]] && [[ -z $dev_item && -n $dev_label ]];then
|
||||||
dev_item=$( echo "$dev_disk_label" | gawk '
|
dev_item=$( echo "$dev_disk_label" | gawk '
|
||||||
|
# first we need to change space x20 in by-label back to a real space
|
||||||
|
#gsub( /x20/, " ", $0 )
|
||||||
|
# then we can see if the string is there
|
||||||
/'$dev_label'/ {
|
/'$dev_label'/ {
|
||||||
item=gensub( /..\/..\/(.+)/, "\\1", 1, $NF )
|
item=gensub( /..\/..\/(.+)/, "\\1", 1, $NF )
|
||||||
print item
|
print item
|
||||||
|
|
Loading…
Reference in a new issue