Как добавить дату команды UNIX в оператор echo - PullRequest
43 голосов
/ 02 февраля 2012

Обычно я хочу, чтобы терминал выводил сообщение, за которым следуют дата и время, например «Привет, сегодня - это -дата и время -».

Таким образом, эхо может выполнить первый бит, а дата может выполнитьпоследний, но только отдельно, как я могу собрать их вместе (в одну команду), чтобы они выводили вместе.

Как

эхо привет

-new команда-

дата

Делает это, но не в одну строку.Трубопроводный ответ?

Ответы [ 5 ]

80 голосов
/ 02 февраля 2012

Это сделает это:

 echo "Hi, today is $(date)"
14 голосов
/ 02 февраля 2012

Дата время будет принимать в произвольном формате строки.

> date +"Hi, today is - %a %b %e %H:%M:$S %Z %Y"
  Hi, today is - Thu Feb 2 03:28: CET 2012
6 голосов
/ 02 февраля 2012
echo Hello there, today is `date`

Вы также можете отформатировать вывод даты, используя такие модификаторы, как:

echo Hello there, today is `date +%D`

См. man date для получения полного списка модификаторов.

3 голосов
/ 02 февраля 2012

Backtick сделает свое дело:

echo "Hi, today is" `date`
2 голосов
/ 02 февраля 2012

Для этой конкретной проблемы решение mimisbrunnr - правильный путь. Для общего вопроса о том, как добавить данные в эхо, некоторые общие методы:

$ echo 'Hi, today is ' | tr -d '\012'; date
Hi, today is Wed Feb  1 18:11:40 MST 2012
$ echo -n 'Hi, today is '; date
Hi, today is Wed Feb  1 18:11:43 MST 2012
$ printf 'Hi, today is '; date
Hi, today is Wed Feb  1 18:11:48 MST 2012
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...