Versuchen Sie Folgendes:
dbEntry="$(printf "SELECT \140%s\140 FROM 'RiverDataDays' WHERE date = '%s';\n" "$timeSample" "$(<tmpValue )" | mysql -N -D "$targetDatabase")"
echo "$dbEntry"
oder
dbEntry="$(printf "SELECT \`%s\` FROM 'RiverDataDays' WHERE date = '%s';\n" "$timeSample" "$(<tmpValue )" | mysql -N -D "$targetDatabase")"
echo "$dbEntry"
Das Backquote (`) wird in der Befehlsersetzung im alten Stil verwendet, z. B.
foo=`command`
Die
foo=$(command)
Syntax wird stattdessen empfohlen. Die Handhabung von Backslashes innerhalb von $() ist weniger überraschend und $() ist einfacher zu verschachteln . Siehe http://mywiki.wooledge.org/BashFAQ/082
\140
ist die Oktaldarstellung eines Backticks, siehe
man ascii