Когда следующая команда запускается из ошибок crontab tar, возникают, когда встречается файл с пробелами в имени файла.tar имена файлов с пробелами в одной строке crontab style tar/find command
/tar -C/-zcvf /root/archive-of-files-with-spaces-in-filename.tar.gz `find /var/www/html -mmin -1450 -print | sed 's|^/||'`
Изменение переключатель -print0 или удаление -print переключатель вообще не решает проблему:
/tar -C/-zcvf /root/archive-of-files-with-spaces-in-filename.tar.gz `find /var/www/html -mmin -1450 -print0 | sed 's|^/||'`
ИЛИ
/tar -C/-zcvf /root/archive-of-files-with-spaces-in-filename.tar.gz `find /var/www/html -mmin -1450 | sed 's|^/||'`
Те же ошибки выбрасываются дегтем.
Как можно переписать команду, чтобы разрешить имена файлов с пробелами в tar без разбиения на имена каталогов, которые не существуют?
Пример ошибки, полученного с именем файла: "2016-12-15 Ремонт Имя файла exportICS.php"
дегтя: вар/WWW/html-calendar.northpawfamilycloud.xyz/страницы/2016-12- 15: не может стат: нет такого файла или каталога
дегтя: Имя: не может стат: нет такого файла или каталога
дегтя: файл: не может стат: нет такого файла или каталога
дегтя: Ремонт: не может стат: нет такого файл или каталог
tar: exportICS.php: Не удается установить: нет такого файла или каталога
ПРИМЕЧАНИЕ | SED «s | ^/||» `полосы слэш от находит так дегтя ошибка«удаление слэша не происходит
Почему у вас есть «tar» в корневом каталоге? Это странное место для хранения исполняемого файла. –
в crontab в командной строке 1 1 * * */bin/tar Я тестирую в командной строке с # tar as/bin в переменной среды PATH моего сервера – ml48603