Что происходит с моим сценарием TAR?

Это может быть лучше в 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

Заранее спасибо

6
задан 18 February 2014 в 21:52

2 ответа

Попробуйте:

#!/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).

0
ответ дан 18 February 2014 в 21:52

Сначала вы попытались создать файл .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.

0
ответ дан 18 February 2014 в 21:52
  • 1
    эмулятор человечности sudo создает UbuntuTouch - channel=ubuntu-touch/utopic-proposed Канал ubuntu-touch/utopic-proposed не найденный на сервере system-image.ubuntu.com – James M 7 August 2015 в 11:45

Другие вопросы по тегам:

Похожие вопросы: