2010-07-14 13 views
5

Per un esempio mi piacerebbe accedere a mysql con una password. So che posso usare -pmypass ma voglio imparare come reindirizzare lo stdin in bash. Quindi il mio test èReindirizza STDIN in bash?

mysql -u limited_user -p <text to redirect into stdin when it prompts for my pass> 

ho visto < nome del file prima, ma io non voglio per memorizzare i dati in un file. Ho provato & e & - ma non ho avuto fortuna. Non sono sicuro di cosa sia lo &.

+2

Si noti che inserendo una pipeline o facendo qualsiasi cosa eccetto lo stdin interattivo, si consente a tutti gli utenti del sistema di visualizzare la password osservando i processi in esecuzione – Daenyth

+0

Daenyth: l'ho sentito ma non l'ho chiesto a riguardo. Gli utenti non root possono vedere i processi in esecuzione dell'utente root? È davvero un problema? perché se nessuno può vedere il tuo processo a meno che non sia più alto allora può accedere ai tuoi file e vedere comunque la tua password? –

+1

sì, su Linux almeno, chiunque può vedere l'intero elenco dei processi. – bstpierre

risposta

9
command <<< "input" 

Questo è un da bash e echo soluzione è più comune negli script, anche se la mia soluzione può essere più utile in una shell interattiva (e dubito qualsiasi di queste soluzioni funziona con mysql, ma la tua domanda è più generale).

+0

Questo è utile , grazie! – chown