about summary refs log tree commit diff stats
path: root/hm/soispha/conf/lf/commands/scripts/dl_file
diff options
context:
space:
mode:
Diffstat (limited to 'hm/soispha/conf/lf/commands/scripts/dl_file')
-rwxr-xr-xhm/soispha/conf/lf/commands/scripts/dl_file33
1 files changed, 33 insertions, 0 deletions
diff --git a/hm/soispha/conf/lf/commands/scripts/dl_file b/hm/soispha/conf/lf/commands/scripts/dl_file
new file mode 100755
index 00000000..54518049
--- /dev/null
+++ b/hm/soispha/conf/lf/commands/scripts/dl_file
@@ -0,0 +1,33 @@
+#! /usr/bin/env dash
+
+# shellcheck source=/dev/null
+SHELL_LIBRARY_VERSION="1.1.4" . %SHELL_LIBRARY_PATH
+
+# Provides the ability to download a file by dropping it into a window
+
+url="$(dragon -t -x)"
+
+if [ -n "$url" ]; then
+  prompt "File Name: "
+  name=""
+  while [ -z "$name" ] || [ -e "$name" ]
+  do
+    read -r name
+    if [ -e "$name" ]; then
+      prompt "File already exists, overwrite [y|N]: "
+      read -r ans
+
+      if [ "$ans" = "y" ]; then
+        break
+      else
+        prompt "File Name: "
+      fi
+    fi
+  done
+
+  # Download the file with curl
+  [ -n "$name" ] && curl -o "$name" "$url" || die "curl failed"
+else
+  die "URL is null!"
+fi
+# vim: ft=sh