diff options
Diffstat (limited to 'mounter.sh')
-rwxr-xr-x | mounter.sh | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/mounter.sh b/mounter.sh new file mode 100755 index 0000000..98f0c13 --- /dev/null +++ b/mounter.sh @@ -0,0 +1,20 @@ +#!/bin/sh + +# Get list of possible partitions to mount. Only select partitions that have +# not been mounted and display their name and size as dmenu options. +parts=$( + lsblk -nlpo NAME,SIZE,TYPE,MOUNTPOINT | grep "part $" | cut -f 1,4 -d' ' +) +[[ -z $parts ]] && exit 1 + +# Prompt for partition to mount. +choice=$( + echo "$parts" | dmenu -i -p "Mount which partition?" | cut -f 1 -d' ' +) +[[ -z $choice ]] && exit 1 + +# Create a mount directory if none exists. Use UUID for unique name. +mntdir="/mnt/$(lsblk -n "$choice" -o UUID | cut -f 1 -d' ')" +sudo mkdir -p "$mntdir" +sudo mount "$choice" "$mntdir" + |