Atualizar
Durante minha próxima sessão, percebi que o mysql não era reconhecido pelo terminal. Percebi que sou burro e estava sempre fazendo as coisas erradas. Não use alias para resolver para um binário.
Exemplo, não use alias mysql="/Applications/MAMP/Library/bin/mysql"
Em vez de
export PATH=$PATH:/Applications/MAMP/Library/bin/
Isso permitirá que você use os binários apropriadamente via bash, e você também terá acesso a todos os binários do mysql, incluindo mysqladmin, etc., a partir do terminal. :) Scripts felizes!
Exemplo de script com variáveis de ambiente apropriadas:
#!/bin/bash
echo ""
echo Reloading Database
echo ""
echo Using
echo PROJECT_BUILD_HOME: $PROJECT_BUILD_HOME
echo MYSQL: $(which mysql)
echo PHP: $(which php)
echo ""
echo ""
mysqladmin -u root -pmypass drop projectbuild
mysqladmin -u root -pmypass create projectbuild
gunzip < $PROJECT_BUILD_HOME/pack/projectbuild.sql.gz | mysql -u root -pmypass projectbuild
Resposta antiga abaixo
Eu tinha a configuração do mysql no .profile dos meus usuários como alias mysql="/path/to/mysql".
Em vez de,
Eu usei export mysql=/path/to/mysql
E no meu script bash, usei $ mysql.
Exemplo
cat /path/to/my/file | $mysql -h localhost -u root -padmin