syncAll.sh 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/bin/bash
  2. # Config
  3. VIDEO_DIR="${HOME}/bin/video"
  4. # Bail silently if ~/.archive_disable exists
  5. if [ -e ~/.archive_disable ]; then
  6. exit 0
  7. fi
  8. # Ensure the remote drive is available
  9. "${VIDEO_DIR}/backup/checkMount.sh"
  10. # Ensure we have a valid TMPDIR
  11. if [ ! -d "${TMPDIR}" ]; then
  12. TMPDIR="`getconf DARWIN_USER_TEMP_DIR 2>/dev/null`"
  13. if [ ! -d "${TMPDIR}" ]; then
  14. TMPDIR="/var/tmp"
  15. fi
  16. if [ ! -d "${TMPDIR}" ]; then
  17. TMPDIR="/tmp"
  18. fi
  19. fi
  20. # Bail if we're already running
  21. PID_FILE="${TMPDIR}/`basename "${0}"`.pid"
  22. touch "${PID_FILE}"
  23. read SYNC_PID < "${PID_FILE}"
  24. if [ -n "${SYNC_PID}" ] && ps -A -o pid | grep -q "${SYNC_PID}"; then
  25. exit 0
  26. else
  27. echo $$ > "${PID_FILE}"
  28. fi
  29. # Fast updates for previously-synced paths
  30. "${VIDEO_DIR}/backup/sync.sh" DMX 100
  31. # Slower updates for recently added paths
  32. "${VIDEO_DIR}/backup/sync.sh" iTunes/iTunes\ Music 10
  33. "${VIDEO_DIR}/backup/sync.sh" Backups 1
  34. "${VIDEO_DIR}/backup/sync.sh" Movies 1
  35. "${VIDEO_DIR}/backup/sync.sh" School 2
  36. "${VIDEO_DIR}/backup/sync.sh" YouTube 6
  37. "${VIDEO_DIR}/backup/sync.sh" TV 2
  38. # Always exit cleanly
  39. rm -f "${PID_FILE}"
  40. exit 0