mountclones 977 B

12345678910111213141516171819202122232425262728293031
  1. #!/usr/bin/env bash
  2. if [ ! -e "${HOME}/.rmounttab" ] ; then
  3. echo "$(basename $0): Necessary file ~/.rmounttab is not present" >&2
  4. exit 1
  5. fi
  6. MOUNTCLONES_ARGS=${MOUNTCLONES_ARGS:- --vfs-cache-mode full}
  7. GENERAL_ARGS="${MOUNTCLONES_ARGS} ${@}"
  8. cat "${HOME}/.rmounttab" | \
  9. grep -v '^#' | \
  10. while IFS="" read -r p || [ -n "$p" ]
  11. do
  12. REMOTE=$(echo "$p" | cut -f 1)
  13. MOUNTPOINT=$(echo "$p" | cut -f 2)
  14. ARGS=$(echo "$p" | cut -f 3)
  15. if [ ! -d "${MOUNTPOINT}" ] ; then
  16. echo "$(basename $0): ${MOUNTPOINT} does not exist, creating" >&2
  17. mkdir -p ${MOUNTPOINT}
  18. fi
  19. if [ "$(ls -A ${MOUNTPOINT})" ] ; then
  20. echo "$(basename $0): ${MOUNTPOINT} is not empty, not mounting" >&2
  21. continue
  22. fi
  23. echo rclone mount "${REMOTE}" "${MOUNTPOINT}" --daemon ${ARGS} ${GENERAL_ARGS}
  24. rclone mount "${REMOTE}" "${MOUNTPOINT}" --daemon ${ARGS} ${GENERAL_ARGS}
  25. done