sql >> Base de Datos >  >> RDS >> Mysql

Bash + MySQL -d problema de acento grave

Intenta hacer esto:

dbEntry="$(printf "SELECT \140%s\140 FROM 'RiverDataDays' WHERE date = '%s';\n" "$timeSample" "$(<tmpValue )" | mysql -N -D "$targetDatabase")"
echo "$dbEntry"

o

dbEntry="$(printf "SELECT \`%s\` FROM 'RiverDataDays' WHERE date = '%s';\n" "$timeSample" "$(<tmpValue )" | mysql -N -D "$targetDatabase")"
echo "$dbEntry"

La comilla inversa (`) se usa en la sustitución de comandos de estilo antiguo, por ejemplo,

foo=`command`

El

foo=$(command)

en su lugar, se recomienda la sintaxis. El manejo de la barra invertida dentro de $() es menos sorprendente, y $() es más fácil de anidar . Consulte http://mywiki.wooledge.org/BashFAQ/082

\140

es la representación octal de un acento grave, ver

man ascii