diff options
-rwxr-xr-x | copy-annotations-from-kobo | 2 | ||||
-rwxr-xr-x | copy-annotations-to-kobo | 58 |
2 files changed, 59 insertions, 1 deletions
diff --git a/copy-annotations-from-kobo b/copy-annotations-from-kobo index 3d386c9..f6770cc 100755 --- a/copy-annotations-from-kobo +++ b/copy-annotations-from-kobo @@ -59,7 +59,7 @@ EOT fi # Update - silentSsh kobo >"$BASEFOLDER/$sdr/metadata.$extension.lua" <<EOF + silentSsh kobo > "$BASEFOLDER/$sdr/metadata.$extension.lua" <<EOF cat "$REMOTE_BASE/$sdr/metadata.$extension.lua" EOF diff --git a/copy-annotations-to-kobo b/copy-annotations-to-kobo new file mode 100755 index 0000000..b92623e --- /dev/null +++ b/copy-annotations-to-kobo @@ -0,0 +1,58 @@ +#!/bin/bash +# +# A mini-wrapper to copy a remote kobo annotation into a local one. +# + +# Parameters +BASENAME="`basename $0`" +DIRNAME="`dirname $0`" +BASEFOLDER="$HOME/data/doc" +REMOTE_BASE="/mnt/sd" +REMOTE="kobo" +PATTERN="$1" + +# Thanks https://serverfault.com/a/764403 +# https://serverfault.com/questions/36421/stop-ssh-login-from-printing-motd-from-the-client#38160 +function silentSsh { + local connectionString="$1" + shift + local commands="$*" + if [ -z "$commands" ]; then + commands=`cat` + fi + ssh -T $connectionString "$commands" +} + +# Check +if [ -z "$PATTERN" ]; then + echo "usage: $BASENAME <pattern>" + exit 1 +fi + +# Dispatch +$DIRNAME/docshower --search "$PATTERN" | while read item; do + #sdr="`echo $item | sed -e 's/\.pdf$//' -e 's/\.epub$//' -e 's/\.djvuf$//'`.sdr" + basename="`echo $item | sed -e 's/\.[^.]*$//'`" + extension="$(echo $item | sed -e "s|$basename.||")" + sdr="$basename.sdr" + + # Check if local file exists + test -e "$BASEFOLDER/$sdr/metadata.$extension.lua" + + # Skip if local file does not exist + if [ "$?" != "0" ]; then + echo "Skipping $item as it's not available at $BASEFOLDER..." + continue + fi + + echo "Processing $item..." + + # Make sure that the annotation folder exists + silentSsh $REMOTE <<EOT + mkdir -p "$REMOTE_BASE/$sdr" + touch "$REMOTE_BASE/$sdr/metadata.$extension.lua" +EOT + + # Update + scp "$BASEFOLDER/$sdr/metadata.$extension.lua" kobo:"$REMOTE_BASE/$sdr/metadata.$extension.lua" +done |