Дата с текстом в файл

Я пытаюсь передать текст по каналу в файл:

'date +"%H:%M" development' > log

Пример: 12:12 разработки

Но это на самом деле передает по каналу date +"%H:%M" development и нет 12:12 development

0
задан 16 February 2017 в 16:01

2 ответа

Существует два способа выполнить желаемый вывод.

неправильный путь - система анализирует строку и подает 'разработку' как аргумент в пользу 'даты'. Так как приложение 'даты' не имеет такого аргумента, оно бросает полезную ошибку.

$ date +"%H:%M" development
date: extra operand ‘development’
Try 'date --help' for more information.

Решение № 1: Используйте дату, форматирующую

$ date +"%H:%M development"
07:10 development

Решение № 2: Используйте Замена Команды

$ echo $(date +"%H:%M") development
07:10 development
0
ответ дан 15 April 2019 в 22:35

Кажется, что Вы используете echo или printf или некоторая другая команда для перенаправления вывода к файлу журнала, иначе Вы получили бы сообщение об ошибке как:

bash: date +"%H:%M" development: command not found

, Если это верно, Вы хотели бы использовать замену команды, чтобы получить вывод эти date команда и также избегать использования сильного заключения в кавычки, ' ', вокруг Вашей строки. Следующее будет работать:

echo "$(date +'%H:%M development')" > log

или

echo "$(date +'%H:%M) development" > log

, Если Вы просто используете date без [1 110] и т.д., затем включайте строку 'разработка' в строке форматирования даты, строка форматирования может быть заключена в кавычки или с [1 111] или с ", поскольку она не расширена ударом, но эти date команда:

date +"%H:%M development" > log

или

date +'%H:%M development' > log
0
ответ дан 15 April 2019 в 22:35

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

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