]> git.scottworley.com Git - picsort/blobdiff - slurp-pics
Allow fetching multiple dirs per device
[picsort] / slurp-pics
index 7c90ed830df090eb34ed44bf8f02a151770f23c3..0dd4e78d821917dd0a2408f7f35981b1e77b5abb 100755 (executable)
@@ -1,17 +1,28 @@
 #!/bin/bash
 
+LEGACY='-oHostKeyAlgorithms=+ssh-dss'
+sftp=( sftp -v -P 19362 -i .slurp-key -oConnectTimeout=4 $LEGACY )
+
+seendir="slurp-seen"
 while read host path;do
+  outdir="slurp-$host-${path//\//,}"
   {
+    mkdir -p "$outdir" "$seendir/$outdir"
     echo "cd $path"
-    sftp -v -P 19362 -i .slurp-key "slurp@$host" <<< "cd $path"$'\n'"ls -1" |
+    "${sftp[@]}" "slurp@$host" <<< "cd $path"$'\n'"ls -1" |
       sed 1,2d |
       while read filename;do
-        if [[ -e "$filename" ]];then
+        output_filename="$outdir/${filename/jpg/jpeg}"
+        if [[ -e "$output_filename" || -e "$seendir/$output_filename" ]];then
           echo "skipping $filename" >&2
         else
           echo "getting $filename" >&2
-          echo "get -p $filename ${filename/jpg/jpeg}"
+          echo "get -p $filename $output_filename"
         fi
       done
-   } | sftp -v -P 19362 -i .slurp-key "slurp@$host"
+   } | "${sftp[@]}" "slurp@$host"
+   for f in "$outdir"/*;do
+     touch "$seendir/$f"
+   done
+   rename-to-date "$outdir"/*
 done < .slurp-hosts