summaryrefslogtreecommitdiff
path: root/mounter
diff options
context:
space:
mode:
Diffstat (limited to 'mounter')
-rwxr-xr-xmounter20
1 files changed, 20 insertions, 0 deletions
diff --git a/mounter b/mounter
new file mode 100755
index 0000000..98f0c13
--- /dev/null
+++ b/mounter
@@ -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"
+