chisaka

(BASH) auto upload to google drive using rclone

Apr 13th, 2017
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 0.97 KB | None | 0 0
  1. #!/bin/sh
  2. GOOGLE_UPLOAD_PATH=/upload/google_drive/
  3. GOOGLE_UPLOAD_TEMP=/upload/.ing/google_drive/
  4.  
  5. GOOGLE_TARGET_PATH=gd:/up
  6. LOG=cloud-autoupload.log
  7.  
  8. if [ $(find "$GOOGLE_UPLOAD_PATH" | wc -l) -gt 1 ]
  9. then
  10.  find $GOOGLE_UPLOAD_PATH | while read i
  11.  do
  12.   if [ $(lsof "$i" | wc -l) -eq 0 ]
  13.   then
  14.    echo $(date +%Y-%m-%d:%H:%M:%S) "MOVE FILE" $i > $LOG
  15.    mv "$i" "$GOOGLE_UPLOAD_TEMP$(echo $i | sed "s#$GOOGLE_UPLOAD_PATH##")"
  16.   fi
  17.  done
  18.  find "$GOOGLE_UPLOAD_PATH" -type d -empty -delete
  19.  if [ ! -d "$GOOGLE_UPLOAD_TEMP/.notyetfinished" ]
  20.  then
  21.    echo $(date +%Y-%m-%d:%H:%M:%S) $GOOGLE_UPLOAD_TEMP "upload started" > $LOG
  22.    mkdir $GOOGLE_UPLOAD_TEMP/.notyetfinished
  23.    /usr/sbin/rclone move $GOOGLE_UPLOAD_TEMP $GOOGLE_TARGET_PATH --transfers 20 --exclude ".*" --no-traverse > $LOG
  24.    rm -rf $GOOGLE_UPLOAD_TEMP/.notyetfinished
  25.    echo $(date +%Y-%m-%d:%H:%M:%S) $GOOGLE_UPLOAD_TEMP "upload finished" > $LOG
  26.    find "$GOOGLE_UPLOAD_TEMP" -type d -empty -delete
  27.  fi
  28. fi
Add Comment
Please, Sign In to add comment