LINUX.ORG.RU

Как присвоить файлу дату создания?

 ,


0

1

Добрый день, нидхелп! Есть скрипт бекапа

#!bin/sh
/usr/bin/mysqldump -uroot -ppass -hlocalhost base | gzip -c > /backup/bases/`date +%Y-%m-%d`db_web8.sql.gz
find /backup/bases -mtime +2 -type f -delete
бекапит, потом удаляет старые бекапы

Теперь мне нужно передать файл бекапа по ftp на другой сервер под виндой

#!/bin/sh
DATE=`/bin/date +%Y-%m-%d`
lftp -u user,password -e 'put ${DATE}db_web8.sql.gz; exit' 172.22.4.111 -p 21021
выдает
put: /backup/bases/${DATE}db_web8.sql.gz: No such file or directory
как правильно обозначить переменную? заранее спс за советы

а что мешает сделать как и в бэкапе?

`date +%Y-%m-%d`db_web8.sql.gz

outsider ★★
()

а так, замени апострофы на кавычки

'put ${DATE}db_web8.sql.gz; exit'

outsider ★★
()

lftp -u user,password -e 'put ${DATE}db_web8.sql.gz; exit' 172.22.4.111 -p 21021 >>>>

lftp -u user,password -e «put ${DATE}db_web8.sql.gz; exit» 172.22.4.111 -p 21021

Spirit_of_Stallman ★★★
()

put: /backup/bases/${DATE}db_web8.sql.gz: No such file or directory

на светлое будущее: выхлопы с ошибками - это уже конечный результат работы программы.
т.е. в данном случае мы видим что lftp пытается работать с файлом который имеет уже _фактическое_ имя с ${DATE}db_web8.sql.gz; тут это из-за ' ' вместо " ", а это уже man bash

Spirit_of_Stallman ★★★
()
Ответ на: комментарий от Spirit_of_Stallman

пасиб огромное, буду изучать man)

egoryich
() автор топика

find /backup/bases -mtime +2 -type f -delete

Не делай так. Что если бэкапы перестанут создаваться (gzip вылетает, пароль поменялся, сервер упал и т. д.)? Тогда всё твои бэкапы будут удалены, и ты останешься с носом. А жать можно смело xz или bz2.

r2d2
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.