バックアップインポートスクリプトを自動化しようとしています。
これを行うには、次のコマンドを使用して最後のバックアップファイル名を取得します。
BACKUP_NAME=$(ssh [email protected] "ls -w1 /mnt/prod_backup" | tail -1)
その後、使用します。
scp -3 user@$YY.YY.YY.YY:/mnt/prod_backup/$BACKUP_NAME /home/coldstorage_import/
ローカルデータベースの復元に使用できるようにファイルをダウンロードしようとしています。
ただし、次のエラーが発生します。
: No such file or directoryackup/backup_prod_2021-11-29-03-00-01.sql
パッチエラーが間違っているようです。
ファイル名を手動でコピー/貼り付けてファイルをダウンロードしようとすると、コマンドは機能します。
私の推測では、どこかに特殊/隠されたキャラクターがあるかもしれませんが、理解することはできません。
編集する:
このコマンドを実行するときに隠された文字を確認してください
echo $BACKUP_NAME | cat -v
わかりました。
bizstore_backup_prod_2021-11-16-03-00-01.sql^M
^M
正常なのかよくわかりません。
答え1
-t
コマンドから削除するssh
と、^M
ファイル名には表示されません。
BACKUP_NAME="$(ssh [email protected] "ls -w1 /mnt/prod_backup" | tail -1)"