LINUX LITE 7.2 FINAL RELEASED - SEE RELEASE ANNOUNCEMENTS SECTION FOR DETAILS


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Info tool
#19
Hi sysdrum,
You have "fifi" in the last line Smile Type enter in the middle to make it work.

I gave up from text editors in the script because I can't make it work with gedit.
Now there is a "Save" button instead of "Open in Leafpad".
Script is more efficient, and now uses checklists.
This way it is possible to select multiple items in the list.

Code:
#! /bin/bash
#--------------------------------------------------------------------------------------------------------
# Info tool by Misko_2083
#--------------------------------------------------------------------------------------------------------

#inxi installed?
if [ -z "$(which inxi)"  ]; then

    if zenity --title="Question" --question text="Inxi is not installed, do you want to install it?\nIf you choose No program will exit."
    then
        gksudo "sudo apt-get install inxi -y" | zenity --progress --title="Installing inxi" --text="please wait" --pulsate --auto-close
                if [ "${PIPESTATUS[0]}" -ne "0" ]; then
                    zenity --error --title="Error" --text="inxi could not be installed."
                    exit
                fi
    else
        exit
    fi
fi

disk_df=(FALSE "Fs disk space info" "df -Th | grep /dev/sd" "View filesystem disk space usage")

FDISK=(FALSE "List Partition Tables" "sudo fdisk -l" "List out the partition information (password required)")

BLOCKDEV=(FALSE "Display Block Devices" "lsblk" "List out information of all block devices")

PARTED=(FALSE "List Partition Layout" "sudo parted -l" "List partition layout on all block devices")

lspci_info=(FALSE "PCI info" "lspci -vnn" "View PCI devices info")

lspci_graph=(FALSE "Graphics" "lspci -vnn | grep VGA -A 12" "View graphics devices info")

lsusb_info=(FALSE "USB info" "lsusb" "View usb devices info")

CPU=(FALSE "32/64 bit CPU" "egrep -c ' lm ' /proc/cpuinfo" "Find out is this 32 or 64 bit CPU")

CPUZ=(FALSE "Processor info" "lscpu" "Display detailed info on CPU")

OS=(FALSE "32/64 bit OS" "uname -a" "Find out is this 32 or 64 bit OS")

inxi_full=(FALSE "Full info" "inxi -Fxz" "View system info")

inxi_df=(FALSE "Partition info" "inxi -plu" "View partition info")

REPOS=(FALSE "View Repositories" "inxi -r" "View repositories on this sistem")

GRAPHICS=(FALSE "View Graphics" "inxi -Gxx" "View graphics on this sistem")

AUDIO=(FALSE "View Audio" "inxi -A" "View audio on this sistem")

NETWORK=(FALSE "View Network" "inxi -nz" "View network on this sistem")

NETWORKC=(FALSE "Network Configuration" "ifconfig -a" "View network  configuration on this sistem")

OPENGL=(FALSE "View OpenGL configuration" "glxinfo | grep OpenGL" "View OpenGL configuration on this sistem")

LSB=(FALSE "View lsb release" "lsb_release -dic" "View lsb release info")

ic="/usr/share/icons/zenity-llcc.png"
selection=$(zenity --window-icon="$ic" --list --checklist --width=900 --height=700 --column="Select" --column="Name" --column="Command" \
--column="Description" --text="Select the info tool you wish to use, then click the Display button.\nYou can select multiple tools." --title="Info" --ok-label="Display" --cancel-label="Quit" --separator="\n" \
"${disk_df[@]}" \
"${FDISK[@]}" \
"${BLOCKDEV[@]}" \
"${PARTED[@]}" \
"${lspci_info[@]}" \
"${lspci_graph[@]}" \
"${lsusb_info[@]}" \
"${CPU[@]}" \
"${CPUZ[@]}" \
"${OS[@]}" \
"${inxi_full[@]}" \
"${inxi_df[@]}" \
"${REPOS[@]}" \
"${GRAPHICS[@]}" \
"${AUDIO[@]}" \
"${NETWORK[@]}" \
"${NETWORKC[@]}" \
"${OPENGL[@]}" \
"${LSB[@]}" )

# If Quit is clicked then exit
if [ "${PIPESTATUS[0]}" -ne "0" ]; then
exit 0
fi

# check if anything is selected
echo $selection | grep '[a-zA-Z0-9]'
if [ "${PIPESTATUS[1]}" -ne "0" ]; then
zenity --info --title='Info' --text='Nothing was selected.'
exit 0
fi

echo $selection | grep "^Fs disk space info" > /dev/null
if [ $? = 0 ];then
    SOME_TEXT="df - View file system disk space usage\nYou can select the mount to open in the file manager"
    SOME_TITLE="df"

    df -h -T| tail -n+2 | while read fs type size used rest target; do
        if [[ $rest ]] ; then
            echo "$fs" "$type" "$size"B "$used"B "$rest"B "${target[@]}" |  grep /dev/sd | # remove "grep /dev/sd |" to show all
            awk '{print $1,"\n",$2,"\n",$3,"\n",$4,"\n",$5,"\n",$6}BEGIN{ s = 7; e = 35; }{for (i=s; i<=e; i++) printf("%s%s", $(i), i<e ? OFS : "\n"); }' #Workaround for disk labels that contain whitespaces(number of characters that can be divided by whitespace =e-s)
        fi
    done | sed -e 's/[ \t]*$//' $1|zenity --list --width=685 --height=350 --title="${SOME_TITLE}" --text="${SOME_TEXT}" --column="Device" --column="Type" --column="Size" --column="Used" --column="Free" --column="%Used" --column="Mount" --print-column="7"| cut -d '|' -f2| tee /tmp/tempdf

    #With radiolist is also an option
    #done | sed -e 's/[ \t]*$//' $1| sed 's!^/dev/sd*!FALSE\n/dev/sd!g' | zenity --list --radiolist --width=685 --height=350 --title="${SOME_TITLE}" --text="${SOME_TEXT}" --column="Select" --column="FS" --column="Type" --column="Size" --column="Used" --column="Free" --column="%Used" --column="Mount" --print-column="8"| cut -d '|' -f2| tee /tmp/tempdf


    if [ -z "$(cat /tmp/tempdf)" ]; then
    rm -f /tmp/tempdf
    exit 0
    fi

    xdg-open "$(cat /tmp/tempdf)"
    rm -f /tmp/tempdf
fi

echo $selection | grep "^List Partition Tables$" > /dev/null
if [ $? = 0 ];then
    gksudo --message 'To run this tool your password is required. Enter your password, or press Cancel.' 'sudo fdisk -l' |tee /tmp/fdiskinfo| zenity --title="Partition Tables (sudo fdisk -l)" --text-info --width=800 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/fdiskinfo.txt)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Partition_Tables.txt" --title="Save List of the Partition Tables")")
        echo -n "$zNewData" > "$zSavePath"        
    fi
        rm /tmp/fdiskinfo
fi

echo $selection | grep "Display Block Devices" > /dev/null
if [ $? = 0 ];then
    lsblk  |tee /tmp/lsblkinfo | zenity --title="Block Devices (lsblk)" --text-info --width=800 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/lsblkinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Block_Devices.txt" --title="Save Block Devices info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/lsblkinfo
fi

echo $selection | grep "^List Partition Layout$" > /dev/null
if [ $? = 0 ];then
    gksudo --message 'To run this tool your password is required. Enter your password, or press Cancel.' 'sudo parted -l'|tee /tmp/partedinfo | zenity --title="Partition Layout (sudo parted -l)" --text-info --width=800 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/partedinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Partition_layout.txt" --title="Save Partition Layout info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/partedinfo
fi

echo $selection | grep "^PCI info$" > /dev/null
if [ $? = 0 ];then
    lspci -vnn | tee /tmp/lspciinfo | zenity --title="PCI info (lspci -vnn)" --text-info --width=800 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/lspciinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="PCI_Devices.txt" --title="Save PCI Devices info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/lspciinfo
fi

echo $selection | grep "^Graphics$" > /dev/null
if [ $? = 0 ];then
    lspci -vnn | grep VGA -A 12 | tee /tmp/lspcigraph| zenity --title="Graphics (lspci -vnn | grep VGA -A 12)" --text-info --width=800 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[3]}" -ne "1" ]; then
        zNewData=$(cat /tmp/lspcigraph)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Graphics_info.txt" --title="Save Graphics info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/lspcigraph
fi

echo $selection | grep "USB info" > /dev/null
if [ $? = 0 ];then
    lsusb | tee /tmp/lsusbinfo | zenity --title="USB info (lsusb)" --text-info --width=800 --height=400 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/lsusbinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="USB_info.txt" --title="Save USB info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/lsusbinfo
fi

echo $selection | grep "32/64 bit CPU" > /dev/null
if [ $? = 0 ];then
    if [ "$(egrep -c ' lm ' /proc/cpuinfo)" -lt "1" ]; then
        bus_zen="32"
    else
        bus_zen="64"
    fi
        zenity --title="32/64 bit CPU" --info --text="This is $bus_zen bit CPU"
fi


echo $selection | grep "Processor info" > /dev/null
if [ $? = 0 ];then
    lscpu | tee /tmp/processorinfo | zenity --title="Processor info (lscpu)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/processorinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="CPU_info.txt" --title="Save Processor info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/processorinfo
fi

echo $selection | grep "32/64 bit OS" > /dev/null
if [ $? = 0 ];then
    if [ "$(uname -a | egrep -c 'i386|i486|i586|i686')" -eq "1" ]; then
        os_zen="32"
    else
        os_zen="64"
    fi
        zenity --title="32/64 bit OS" --info --text="This is $os_zen bit OS"
fi

echo $selection | grep "Full info" > /dev/null
if [ $? = 0 ];then
    inxi -Fxz -c 0 | tee /tmp/inxifull | zenity --title="Full info (inxi -Fxz)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/inxifull)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Full_info.txt" --title="Save Full Computer info")")
        echo -n "$zNewData" > "$zSavePath"
    
    fi
        rm /tmp/inxifull
fi

echo $selection | grep "Partition info" > /dev/null
if [ $? = 0 ];then
    inxi -plu -c 0 | tee /tmp/partitionsinfo| zenity --title="Partition info (inxi -plu)" --text-info --width=650 --height=400 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/partitionsinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Partition_info.txt" --title="Save Partition info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/partitionsinfo
fi

echo $selection | grep "View Repositories" > /dev/null
if [ $? = 0 ];then
    inxi -r -c 0 | tee /tmp/repositorieslist | zenity --title="Repositories (inxi -r)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/repositorieslist)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Repositories.txt" --title="Save List Of The Repositories")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/repositorieslist
fi

echo $selection | grep "View Graphics" > /dev/null
if [ $? = 0 ];then
    inxi -Gxx -c 0 | tee /tmp/graphicsinfo | zenity --title="Graphics info (inxi -Gxx)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/graphicsinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Graphics_inxi.txt" --title="Save Graphic information (inxi)")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/graphicsinfo
fi

echo $selection | grep "View Audio" > /dev/null
if [ $? = 0 ];then
    inxi -A -c 0 | tee /tmp/audioinfo | zenity --title="Audio info (inxi -A)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/audioinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Audio_info.txt" --title="Save Audio information (inxi)")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/audioinfo
fi

echo $selection | grep "^View Network$" > /dev/null
if [ $? = 0 ];then
    inxi -nz -c 0 | tee /tmp/networkinfo | zenity --title="Network info (inxi -nz)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/networkinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Network_inxi.txt" --title="Save Network information (inxi)")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/networkinfo
fi

echo $selection | grep "Network Configuration$" > /dev/null
if [ $? = 0 ];then
    ifconfig -a | tee /tmp/networkconfinfo | zenity --title="Network info (ifconfig -a)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/networkconfinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Network_conf.txt" --title="Save Network Configuration Info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/networkconfinfo
fi

echo $selection | grep "View OpenGL configuration" > /dev/null
if [ $? = 0 ];then
    glxinfo | grep OpenGL | tee /tmp/openglinfo | zenity --title="View OpenGL configuration (glxinfo | grep OpenGL)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[3]}" -ne "1" ]; then
        zNewData=$(cat /tmp/openglinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="OpenGL_info.txt" --title="Save OpenGL Info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/openglinfo
fi

echo $selection | grep "View lsb release" > /dev/null
if [ $? = 0 ];then
    lsb_release -dic| tee /tmp/lsbinfo | zenity --title="View lsb release (lsb_release -dic)" --text-info --width=850 --height=600 --ok-label="Save" --cancel-label="Close"
    if [ "${PIPESTATUS[2]}" -ne "1" ]; then
        zNewData=$(cat /tmp/lsbinfo)
        zSavePath=$(echo -n "$(zenity --file-selection --save --confirm-overwrite --filename="Network_conf.txt" --title="Save ls_ release Info")")
        echo -n "$zNewData" > "$zSavePath"
    fi
        rm /tmp/lsbinfo
fi
Reply


Messages In This Thread
Info tool - by misko_2083 - 11-14-2014, 02:17 AM
Re: Info tool - by rokytnji - 11-14-2014, 04:49 PM
Re: Info tool - by rokytnji - 11-14-2014, 07:09 PM
Re: Info tool - by misko_2083 - 11-14-2014, 08:06 PM
Re: Info tool - by rokytnji - 11-14-2014, 08:36 PM
Re: Info tool - by rokytnji - 11-14-2014, 08:53 PM
Re: Info tool - by rokytnji - 11-14-2014, 09:01 PM
Re: Info tool - by gold_finger - 11-14-2014, 11:56 PM
Re: Info tool - by rbdflyboy - 11-15-2014, 12:09 AM
Re: Info tool - by shengchieh - 11-15-2014, 03:17 AM
Re: Info tool - by misko_2083 - 11-15-2014, 10:30 PM
Re: Info tool - by mlsmith - 11-28-2014, 02:23 PM
Re: Info tool - by TMG1961 - 11-28-2014, 04:55 PM
Re: Info tool - by rokytnji - 11-28-2014, 05:34 PM
Re: Info tool - by TMG1961 - 11-28-2014, 09:52 PM
Re: Info tool - by sysdrum - 11-28-2014, 10:09 PM
Re: Info tool - by mlsmith - 11-29-2014, 04:00 AM
Re: Info tool - by sysdrum - 11-29-2014, 04:59 AM
Re: Info tool - by misko_2083 - 11-29-2014, 07:57 AM
Re: Info tool - by sysdrum - 11-29-2014, 08:50 AM

Forum Jump:


Users browsing this thread: 3 Guest(s)