我正在尝试将文本通过管道传输到文件中:
'date +"%H:%M" development' > log
示例:12:12 开发
但这实际上是管道date +"%H:%M" development
而不是12:12 development
我正在尝试将文本通过管道传输到文件中:
'date +"%H:%M" development' > log
示例:12:12 开发
但这实际上是管道date +"%H:%M" development
而不是12:12 development
有两种方法可以实现所需的输出。
错误的方式 - 系统解析该行,并将“开发”作为“日期”的参数提供。由于“日期”应用程序没有这样的参数,它会抛出一个有用的错误。
解决方案 #1:使用日期格式
解决方案 #2:使用命令替换
您似乎正在使用
echo
orprintf
或其他命令将输出重定向到日志文件,否则您会收到如下错误消息:如果是这种情况,您需要使用命令替换来获取命令的输出
date
,同时避免' '
在字符串周围使用强引号 , 。以下将起作用:或者
如果您只是
date
不使用echo
etc,则在日期格式字符串中包含字符串“development”,格式字符串可以用'
or引用"
,因为它不是由 bash 扩展,而是由date
命令扩展:或者