Текущий (рабочий) каталог, вероятно, не установлен в /opt/www при запуске cronjob. Вы можете установить его в файле backup.sh вашего скрипта перед tar.....
line by:
cd /opt/www
или вы можете использовать полный путь в tar line by:
tar zcf backups/$FILENAME /opt/www/f
Я также могу посоветовать использовать полный путь для backups/$FILENAME
Попробуйте перенаправить вывод из команды date
, например:
$ date | awk '{print $2, $3, $6}'
Dec 1 2014
Если вы действительно хотите взять вывод из date
с помощью команды, похожей на вашу, то вам нужно перенаправить его с помощью HERESTRING, так же известной под названием. (<<<
) (предполагая оболочку zsh
или довольно свежую версию ksh93
или bash
)).
$ awk '{print $2, $3, $6}' <<<$(date)
Dec 1 2014
Эта вторая форма примет вывод команды $(дата)
и перенаправит его на awk
через STDIN.
Но использование awk
здесь вообще не требуется. Команда date
имеет свои возможности форматирования.
$ date +"%b %d %Y"
Dec 01 2014
Зачем использовать awk
вообще?
date +"%b %d %Y"
дает вам значения без хлопот.
Вы должны проводить выход дата
:
: [1219728]:
$ date | awk '{print $2, $3, $6}'
1 Dec 2014
или Get Дата
Для форматирования его для вас:
$ date +'%d %b %Y'
01 Dec 2014