Я хотел бы вывести базу данных и scp это к удаленному серверу и снабдить суффиксом файл date_hour. Вот то, что я сделал (конечно, это не работает):
mysqldump -u root -p myDb > myDb.sql && \
tar -cvzf myDb.tar.gz myDb.sql && \
scp myDb.tar.gz root@x.x.x.x:myDb_$(date +\%Y\%m\%d\%H\%M\%S).tar.gz
Каков должен быть правильный синтаксис?
Спасибо
За пределами опечаток, DNS, сети, клиент-серверных полномочий файла и проблем порта (требующий a -P
отметьте к scp), единственная другая вещь, которая терпит мне, то, что Вы не указали путь после двоеточия.
$ root@x.x.x.x:myDb_ (дата + \%Y \% m \% d \% H \% M \% S) .tar.gz
Это означает, что сервер добирается для решения, где тот файл выводится. Если это-/tmp (который может быть предосторожностью безопасности), затем, это не может закончиться, где Вы ожидаете.
Если Вы имели в виду домашнюю папку корня, то можно или использовать
...x.x.x.x:/root/myDb_...
или можно использовать сокращение от домашней папки "пользователя" тильда (~)
...x.x.x.x:~/myDb_...
Если это не решение, можете Вы обновлять свой вопрос с выводом каждой команды.:-)