Shell cmd" date"最后没有新线

时间:2016-01-22 09:07:44

标签: shell newline

我想使用date命令输出一行日期,但它以" \ n"结束。目前,我使用的是:

。我不需要它
echo -n `date +"[%m-%d %H:%M:%S]"`

date +"[%m-%d %H:%M:%S]"|tr -d "\n"

" date"是否有任何内置参数这样做?

3 个答案:

答案 0 :(得分:13)

不,没有。您需要其他命令,例如echo -nprintftr。您可以在PATH中的某个位置放置一个脚本(例如/ usr / bin /)并使其chmod +x /usr/bin/mydate

可执行

脚本:

#!/bin/sh
echo -n `date +"[%m-%d %H:%M:%S]"`

或使用别名。

alias mydate="echo -n `date +"[%m-%d %H:%M:%S]"`"

答案 1 :(得分:10)

您可以使用 printf 。它不会添加新的行符号:

$ printf `date "+%d.%m.%Y"`
22.01.2016$

答案 2 :(得分:0)

您将要使用某种形式的空格替换换行符,以便输出不会一起运行。

可用于监控工作空间峰值大小的完整示例:

nohup watch -t -n 60 "(date '+%F/%H:%M:%S' | tr '\n' '\t'; du -sh /folder/to/monitor/) >> workspace.log" &

不要忘记杀死它,因为文件会无限增长。