Terminal içinden MySQL üzerinde aşağıdaki komutu çalıştırmayı denediğimde:
mysql -u $user -p$password -e "statement"
Yürütme beklendiği gibi çalışır, ancak her zaman bir uyarı verir:
Uyarı: Komut satırı arabiriminde bir parola kullanmak güvenli olmayabilir.
Ancak, yukarıdaki ifadeyi $password
şifremi saklayan bir ortam değişkeni ( ) kullanarak yapmak zorundayım , çünkü komutu Terminal içinden bas komut dosyasında yinelemeli olarak çalıştırmak istiyorum ve kesinlikle bir istemin görünmesini beklemekten hoşlanmıyorum ve şifremi tek bir komut dosyasında 50 veya 100 kez girmeye zorladım. İşte sorum:
Uyarıyı bastırmak mümkün müdür? Komut belirttiğim gibi düzgün çalışıyor, ancak döngüyü 50 veya 100 kez çalıştırdığımda pencere oldukça dağınık hale geliyor.
Uyarı mesajına uymalı mıyım ve şifremi scriptime yazmamalı mıyım? Bu durumda, istem her beni zorladığında şifremi girmem gerekir mi?
Koşmak man mysql
yardımcı olmaz, sadece
--show-warnings
Varsa, her ifadeden sonra gösterilecek uyarılar. Bu seçenek etkileşimli ve toplu mod için geçerlidir.
ve bir şey eksik değilsem, işlevselliğin nasıl kapatılacağı hakkında hiçbir şeyden bahsetmez.
OS X 10.9.1 Mavericks'liyim ve homebrew'dan MySQL 5.6 kullanıyorum.
pexcept
. Terminal eklemeleri yapabilir ve komutun verdiği geri bildirimleri işleyebilir. Bu şekilde istediğiniz çıktıyı ve istediğiniz gerçek çıktı şeridini atlayabilirsiniz :)
[client]
password=my_password
içinde~/.my.cnf
). Elbette bazı güvenlik etkileri de vardır, ancak en azından çalıştırabilen herkes tarafından erişilebilir değildirps
ve dosya izinleriyle bunun üzerinde kontrolünüz vardır.