基本上我想让终端输出一条消息,后跟日期和时间,例如"嗨,今天是-dateandtime - "。
所以echo可以完成第一位,而date可以完成最后一次,但只能单独完成,如何将它们放在一起(在一个命令中),以便它们一起输出。
像
回声你好
- 新命令 -
日期
是吗,但不是一行。流水线的答案是什么?
答案 0 :(得分:79)
这样做:
echo "Hi, today is $(date)"
答案 1 :(得分:13)
日期时间将采用任意格式字符串。
> date +"Hi, today is - %a %b %e %H:%M:$S %Z %Y"
Hi, today is - Thu Feb 2 03:28: CET 2012
答案 2 :(得分:6)
echo Hello there, today is `date`
您还可以使用以下修饰符格式化日期输出:
echo Hello there, today is `date +%D`
有关修饰符的完整列表,请参阅man date
。
答案 3 :(得分:3)
Backtick会做到这一点:
echo "Hi, today is" `date`
答案 4 :(得分:2)
对于这个特殊问题,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