Guest User

LFTP script

a guest
May 11th, 2017
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.47 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. USER="user"
  4. PASS="pass"
  5. HOST="server"
  6. NOW=$(date +"%m-%d-%y_%H.%M.%S")
  7. PORT=22
  8. REMOTE_DIR1='/media/dmah/private/rtorrent/data/completed/LFTP/downloading/moviescouch'
  9. LOCAL_DIR1="/Users/SeedBox/movies-couch"
  10. REMOTE_DIR2='media/dmah/private/rtorrent/data/completed/LFTP/downloading/tv-sonarr-kc'
  11. LOCAL_DIR2="/Users/SeedBox/tv-sonarr"
  12. REMOTE_DIR3='media/dmah/private/rtorrent/data/completed/LFTP/downloading/radarr-kc'
  13. LOCAL_DIR3="/Users/SeedBox/radarr"
  14.  
  15. NFIL=3
  16. NSEG=50
  17. MINCHUNK=1M
  18.  
  19. echo "${0} Starting at $(date)"
  20.  
  21.  
  22.  
  23. BASE_NAME="$(basename "$0")"
  24. LOCKF="/tmp/$base_name.lock"
  25.  
  26. trap "rm -f $lock_file" SIGINT SIGTERM
  27. if [ -e "$lock_file" ]
  28. then
  29. echo "$base_name is running already."
  30. exit
  31. else
  32.  
  33. touch "${LOCKF}"
  34. /usr/local/bin/lftp -p ${PORT} -u "${USER},${PASS}" sftp://${HOST} << EOF
  35. set ftp:list-options -a
  36. set xfer:use-temp-file yes
  37. set xfer:temp-file-name *.tmp
  38. set pget:min-chunk-size ${MINCHUNK}
  39. set pget:default-n ${NSEG}
  40. set mirror:use-pget-n ${NSEG}
  41. set mirror:parallel-transfer-count ${NFIL}
  42. set mirror:parallel-directories yes
  43. set mirror:no-empty-dirs true
  44. mirror -c -L -v -e --Remove-source-dirs --log="/Users/SeedBox/movies-couch.log" "${REMOTE_DIR1}" "${LOCAL_DIR1}"
  45. quit
  46. EOF
  47.  
  48. touch "${LOCKF}"
  49. /usr/local/bin/lftp -p ${PORT} -u "${USER},${PASS}" sftp://${HOST} << EOF
  50. set ftp:list-options -a
  51. set xfer:use-temp-file yes
  52. set xfer:temp-file-name *.tmp
  53. set pget:min-chunk-size ${MINCHUNK}
  54. set pget:default-n ${NSEG}
  55. set mirror:use-pget-n ${NSEG}
  56. set mirror:parallel-transfer-count ${NFIL}
  57. set mirror:parallel-directories yes
  58. set mirror:no-empty-dirs true
  59. mirror -c -L -v -e --Remove-source-dirs --log="/Users/SeedBox/tv-sonarr.log" "${REMOTE_DIR2}" "${LOCAL_DIR2}"
  60. quit
  61. EOF
  62.  
  63. touch "${LOCKF}"
  64. /usr/local/bin/lftp -p ${PORT} -u "${USER},${PASS}" sftp://${HOST} << EOF
  65. set ftp:list-options -a
  66. set xfer:use-temp-file yes
  67. set xfer:temp-file-name *.tmp
  68. set pget:min-chunk-size ${MINCHUNK}
  69. set pget:default-n ${NSEG}
  70. set mirror:use-pget-n ${NSEG}
  71. set mirror:parallel-transfer-count ${NFIL}
  72. set mirror:parallel-directories yes
  73. set mirror:no-empty-dirs true
  74. mirror -c -L -v -e --Remove-source-dirs --log="/Users/SeedBox/radarr.log" "${REMOTE_DIR3}" "${LOCAL_DIR3}"
  75. quit
  76. EOF
  77.  
  78. rm -f "$lock_file"
  79. trap - SIGINT SIGTERM
  80. echo "${0} Finished at $(date)"
  81. exit 0
  82. fi
Add Comment
Please, Sign In to add comment