将日期和文本保存到文件

将日期和文本保存到文件

我正在尝试将文本传输到文件中:

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

示例:12:12 开发

但这实际上是管道date +"%H:%M" development,而不是12:12 development

答案1

有两种方法可以实现所需的输出。

错误的方式 - 系统解析该行,并将“development”作为“date”的参数。由于“date”应用程序没有这样的参数,因此它会抛出一个有用的错误。

$ 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

答案2

似乎您正在使用echoprintf其他命令将输出重定向到日志文件,否则您会收到如下错误消息:

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

如果是这种情况,您需要使用命令替换来获取date命令的输出,同时避免' '在字符串周围使用强引号 。以下方法有效:

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

或者

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

如果您只是使用date不带echo等的,则在日期格式字符串中包含字符串“development”,格式字符串可以用或引用'"因为它不是由 bash 扩展的,而是由date命令扩展的:

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

或者

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

相关内容