From d2cf9cb06f3ee4d50071b6e56f28a50f4133c166 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Sun, 1 Jan 2023 15:33:19 -0300 Subject: Feat: adds copy-annotations-from-kobo --- copy-annotations-from-kobo | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100755 copy-annotations-from-kobo diff --git a/copy-annotations-from-kobo b/copy-annotations-from-kobo new file mode 100755 index 0000000..40ad9e8 --- /dev/null +++ b/copy-annotations-from-kobo @@ -0,0 +1,42 @@ +#!/bin/bash +# +# A mini-wrapper to copu a remote kobo annotation into a local one. +# + +# Parameters +BASENAME="`basename $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" + local commands="$2" + if [ -z "$commands" ]; then + commands=`cat` + fi + ssh -T $connectionString "$commands" +} + +# Check +if [ -z "$PATTERN" ]; then + echo "usage: $BASENAME " + exit 1 +fi + +# Dispatch +show --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" + + mkdir -p "$BASEFOLDER/$sdr" + touch "$BASEFOLDER/$sdr/metadata.$extension.lua" + silentSsh kobo >"$BASEFOLDER/$sdr/metadata.$extension.lua" <