aboutsummaryrefslogtreecommitdiff
path: root/mdk
diff options
context:
space:
mode:
Diffstat (limited to 'mdk')
-rwxr-xr-xmdk69
1 files changed, 69 insertions, 0 deletions
diff --git a/mdk b/mdk
new file mode 100755
index 0000000..301a35a
--- /dev/null
+++ b/mdk
@@ -0,0 +1,69 @@
+#!/bin/bash
+#
+# MDK (Move / Delete / Keep)
+################################################################################
+
+if [ "$#" -ge 2 ]; then
+ cmd=$1
+ shift
+else
+ echo "Usage: $0 <command> <file1> [<file2> ...]";
+ exit 0;
+fi
+
+
+move() {
+ file="$1"
+
+ read -e -p "Where? " movedir
+ mkdir -p "$movedir"
+
+ mv "$file" "$movedir/" || exit 1
+
+ echo "[+] Moved to '$movedir'"
+}
+
+delete() {
+ file="$1"
+
+ mkdir -p .trash
+ echo ".trash generated, delete it manually if you want"
+ mv "$file" .trash/ || exit 1
+
+ echo "[+] Deleted"
+}
+
+keep() {
+ echo "[+] Kept"
+}
+
+for file in "$@"; do
+ key=""
+ while [ -z "$key" ]; do
+ echo -e "==============================\n[+] Opening '$file'..."
+ $cmd "$file"
+ echo -e "\n=============================="
+ prompt="[M]ove / [D]elete / [K]eep / [A]gain (${file}) > "
+ read -n1 -p "$prompt" key
+ while [[ ! "$key" =~ m|d|k|a ]]; do
+ echo -e "\nWhat?"
+ read -n1 -p "$prompt" key
+ done
+ echo
+ case "$key" in
+ m)
+ move "$file"
+ ;;
+ d)
+ delete "$file"
+ ;;
+ k)
+ keep
+ ;;
+ a)
+ key=""
+ ;;
+ esac
+ done
+done
+