2010-07-14 24 views
5

Mysql'e bir şifre ile giriş yapmak istiyorum. -pmypass'ı kullanabileceğimi biliyorum ama stdin'i bash'a nasıl yönlendirdiğimi öğrenmek istiyorum. Yani benim testBash STDIN yeniden yönlendirme?

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

olduğunu ben < dosya adı daha önce görülmemiş ama bir dosyada veri depolamak istemiyorum. & ve &'u denedim, ancak şansım olmadı. & - ne yaptığından emin değilim.

+2

Bir pipeline koyarak veya interaktif stdin dışında bir şey yaparak, sistemdeki her kullanıcının çalışan işlemleri – Daenyth

+0

Daenyth'e bakarak parolanızı görüntülemesine izin verdiğinizi unutmayın: Bunu duydum ama bunu sordum. Kök olmayan kullanıcılar, kök kullanıcı çalıştırma işlemlerini görebilir mi? Bu gerçekten bir sorun mu? Çünkü eğer kimse daha yüksek olmadıkça sürecinizi göremiyorsa, dosyalarınıza erişebilir ve yine de şifrenizi görebilirler. –

+1

Evet, en azından linux üzerinde, tüm işlem listesini herkes görebilir. – bstpierre

cevap

3

Normalde, bu sadece: şifreleri okumak MySQL dahil

echo password|command 

Ama çok program, aslında stdin'den okumaz. Aksine, doğrudan terminal ile etkileşime girer. Bakınız Trick an application into thinking its stdin is interactive, not a pipe. Bir bashism ve benim çözüm Bir etkileşimli kabukta daha kullanışlı olabilir gerçi echo çözüm komut daha yaygındır

9
command <<< "input" 

(ve ben bu çözümlerin herhangi şüphe MySQL ile çalışır ancak soru daha geneldir).

+0

Bu kullanışlı , teşekkür ederim! – chown

İlgili konular