dmenu-scripts/dmenu-usb-man
2022-04-22 12:48:51 +02:00

52 lines
1.2 KiB
Bash
Executable File

#!/bin/sh
# a simple dmenu usb managment script
driveCount(){
count="$(printf '%s\n' "$1" | wc -l)"
}
mount(){
mountable="$(lsblk -lp | awk '/^\/dev\/sd.*part $/ { print $1 " ("$4")" }')"
if [ "$mountable" = "" ]; then
quick-notify "Dmenu Usb Manager" "No drives to mount"
exit
fi
chosen="$(printf '%s' "$mountable" | dmenu -p "Drive to mount?")"
if [ -n "$chosen" ];then
udisksctl mount -b "${chosen%% *}"
quick-notify "Dmenu Usb Manager" "Drive ${chosen%% *} mounted"
else
quick-notify "Dmenu Usb Manager" "No drives chosen to mount"
exit
fi
}
unmount(){
mounted="$(lsblk -lp | awk '/run/ { print $1 " ("$4")" }')"
if [ "$mounted" = "" ]; then
quick-notify "Dmenu Usb Manager" "No drives to unmount"
exit
fi
chosen="$(printf "$mounted" | dmenu -p "Drive to unmount?")"
if [ -n "$chosen" ];then
udisksctl unmount -b "${chosen%% *}"
quick-notify "Dmenu Usb Manager" "Drive ${chosen%% *} unmounted"
else
quick-notify "Dmenu Usb Manager" "No drives chosen to unmount"
exit
fi
}
case $(printf "mount\\nunmount" | dmenu -p "Chose your usb action") in
"mount") mount ;;
"unmount") unmount ;;
esac