Ho una stringa multi-riga proveniente da un altro programma che voglio convertire in un comando SQL. Speravo che printf mi potrebbe aiutare, ma non sembra funzionare:Formato stdin in bash
echo -e '1\n2\n3'|printf 'SELECT %s INTO MyTable'
speravo di vedere:
SELECT '1 2 3' INTO MyTable
Ma ho ottenuto:
SELECT INTO MyTable
Come posso ottenere% s per leggere lo stdin?
Sapevo che c'era un modo. Stavo solo guardando xargs ma non riuscivo a metterlo insieme. Questo è esattamente quello che volevo. – User1
Funzionerebbe bene, ad eccezione del fatto che bash's printf non è lo stesso dell'eseguibile/usr/bin/printf, il che significa che non puoi usare "% q". Sono andato con il comando funzionale di @Dennis Williamson – isaaclw