
SQLにバックアップをロードするスクリプトを作成していますが、lsの結果をSQLに渡すことはできません。これはうまくいきません:
#!/bin/bash
/usr/bin/mysql ges -h localhost -u root -p****** << ls -t /backup/mysqldump_ges* | head -1
答え1
MySQLにバックアップをロードするには、次の形式を使用する必要があります。
mysql -uroot -p***** < backup.sql
そして、バックアップはmysqldumpによって生成されたものと同じSQLファイルでなければなりません。
あなたの質問によると、ディレクトリの最初のファイルをMySQLにインポートしたいと思います。この場合、コマンドは次のようになります。
mysql -uroot -p***** < $(ls | head -n 1)