crontab каждый час в текст с именем формата

Я хочу сделать crontab, который будет писать контент с таким именем формата:

content_YYYYMMDD_HHmmSS.txt // for example: log_20170811_1706.txt

Пожалуйста, помогите мне. Я новичок Linux.

0
задан 11 August 2017 в 12:59

3 ответа

crontab - таблица cron-заданий, выполняемых демоном cron, процессом, который планирует задания в то время, когда вы его даете (https://en.wikipedia.org/wiki/Cron).

Чтобы записать что-то в файл, вам нужно будет запустить crontab -e, чтобы отредактировать crontab (см. также https://en.wikipedia.org/wiki/Cron ).

Чтобы записать в файл, который содержит дату как имя, вам нужно будет использовать команду date. Например, date +"%Y%d%m" печатает то, что можно было бы назвать YYYYMMDD. Вы можете получить информацию о формате даты в man date.

В общем, вам нужно будет написать что-то вроде

* * * * * echo "Test" > "/home/myuser/content_"$(date +"\%Y\%d\%m")".txt"

для записи каждую минуту «Тест», в файл текущей даты (EDIT: как предложено steeldriver, вам нужно избежать%, вместо этого он будет интерпретироваться как newline cron). Вы должны следить за тем, что это выполняется как ваш пользователь, поэтому вы должны написать в каталоге, где у вас есть права на запись.

1
ответ дан 22 May 2018 в 19:34

crontab - таблица cron-заданий, выполняемых демоном cron, процессом, который планирует задания в то время, когда вы его даете (https://en.wikipedia.org/wiki/Cron).

Чтобы записать что-то в файл, вам нужно будет запустить crontab -e, чтобы отредактировать crontab (см. также https://en.wikipedia.org/wiki/Cron ).

Чтобы записать в файл, который содержит дату как имя, вам нужно будет использовать команду date. Например, date +"%Y%d%m" печатает то, что можно было бы назвать YYYYMMDD. Вы можете получить информацию о формате даты в man date.

В общем, вам нужно будет написать что-то вроде

* * * * * echo "Test" > "/home/myuser/content_"$(date +"\%Y\%d\%m")".txt"

для записи каждую минуту «Тест», в файл текущей даты (EDIT: как предложено steeldriver, вам нужно избежать%, вместо этого он будет интерпретироваться как newline cron). Вы должны следить за тем, что это выполняется как ваш пользователь, поэтому вы должны написать в каталоге, где у вас есть права на запись.

1
ответ дан 18 July 2018 в 08:41

crontab - таблица cron-заданий, выполняемых демоном cron, процессом, который планирует задания в то время, когда вы его даете (https://en.wikipedia.org/wiki/Cron).

Чтобы записать что-то в файл, вам нужно будет запустить crontab -e, чтобы отредактировать crontab (см. также https://en.wikipedia.org/wiki/Cron ).

Чтобы записать в файл, который содержит дату как имя, вам нужно будет использовать команду date. Например, date +"%Y%d%m" печатает то, что можно было бы назвать YYYYMMDD. Вы можете получить информацию о формате даты в man date.

В общем, вам нужно будет написать что-то вроде

* * * * * echo "Test" > "/home/myuser/content_"$(date +"\%Y\%d\%m")".txt"

для записи каждую минуту «Тест», в файл текущей даты (EDIT: как предложено steeldriver, вам нужно избежать%, вместо этого он будет интерпретироваться как newline cron). Вы должны следить за тем, что это выполняется как ваш пользователь, поэтому вы должны написать в каталоге, где у вас есть права на запись.

1
ответ дан 24 July 2018 в 19:09

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

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