Guest User

script

a guest
Jan 14th, 2022
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.54 KB | None | 0 0
  1. #!/bin/sh
  2. # TODO: multisel
  3.  
  4. target="$1"
  5. [ -z "$target" ] && target="$(realpath .)"
  6. prompt="$2"
  7.  
  8. while true; do
  9. p="$prompt"
  10. [ -z "$p" ] && p="$(printf "$target" | sed 's|/home/amarakon|~|')"
  11. sel="$(printf "$(ls -A "$target")\n.\n.." | dmenu -p "$p" -l 30)"
  12. ec=$?
  13. [ "$ec" -ne 0 ] && exit $ec
  14.  
  15. c="$(echo "$sel" |cut -b1)"
  16. if [ "$c" = "/" ]; then
  17. newt="$sel"
  18. else
  19. newt="$(realpath "${target}/${sel}")"
  20. fi
  21.  
  22. if [ -e "$newt" ]; then
  23. target="$newt"
  24. if [ ! -d "$target" ]; then
  25. echo "$target"
  26. exit 0
  27. fi
  28. fi
  29. done
Advertisement
Add Comment
Please, Sign In to add comment