Это может быть лучше в StackExchange, но я использую Ubuntu в качестве моего файлового сервера.
Поэтому я пытаюсь использовать tar
и gzip
только для резервного копирования последних 6 месяцев изменений на моем файловом сервере, и это не работает. Он ничего не gzip
, он помещает файл tar в тот же каталог, что и скрипт (не то, что я хочу), и он меняет имя файла на часть строки tar.
Вот сценарий:
#!/bin/bash
tod=$(date +%F_%H%M%S)
echo "start"
echo $tod
echo "testing tar, only the last 6 months"
tar -cvf--newer-mtime=08-11-2013 /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar /homedepot/yellowsolo/xz/official/official /homedepot/yellowsolo/xz/home/home
echo "now zipping"
gzip /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar.gz
echo $tod
echo "done"
exit
Заранее спасибо
Попробуйте:
#!/bin/bash
tod=$(date +%F_%H%M%S)
echo "Start"
echo $tod
echo "testing tar, only the last 6 months"
tar --newer-mtime=20130811 -cvzf /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar /homedepot/yellowsolo/xz/official/official /homedepot/yellowsolo/xz/home/home
echo "Done"
exit
Я исправил ошибки в команде tar - вам нужно иметь опцию f
перед именем файла и отфильтровать ее через gzip (опция z
).
Сначала вы попытались создать файл .tar
. Помимо синтаксической ошибки bodhi.zazen уже указал, что ваше имя файла tar
должно следовать сразу после опции -f
. Как удачно указал Вильф в своем ответе.
tar --newer-mtime=08-11-2013 -cvf /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar /homedepot/yellowsolo/xz/official/official /homedepot/yellowsolo/xz/home/home
Далее есть еще одна ошибка. Вы собираетесь gzip
/homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar.gz
, но этот файл не существует.
Скорее у вас есть файл /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar
Вы должны использовать,
gzip /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar
Он создаст /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar.gz
.
Примечание:
Вы можете сделать это напрямую,
tar --newer-mtime=08-11-2013 -cvzf /homedepot/yellowsolo/xz/6months/xz$tod-last6months.tar.gz /homedepot/yellowsolo/xz/official/official /homedepot/yellowsolo/xz/home/home
-z
одновременно переключать zip tar.