命令行上带有时间戳的注释

时间:2011-10-12 20:40:06

标签: shell

有点奇怪的请求。 我想要一个窗口,我可以在其中记录特定笔记列表,每个笔记都有一个时间戳。 我写过以下有效的内容:

$ while read line
> do
> echo $(date +%H:%M:%S) $line
> done | tee log
Hello
21:35:30 Hello
World
21:35:32 World

有更优雅的方式吗?

3 个答案:

答案 0 :(得分:2)

L() { echo `date` $* >> PATH/LOGFILE; } 

在您的.bashrc中,您可以在每个终端中执行L something important or not

HTH

答案 1 :(得分:2)

如果您关心保留空格,请引用变量$ line。日期格式%T相当于%H:%M:%S。您可能想要附加到日志文件。

否则,我能想到的唯一能让它变得更加优雅的就是投入一个功能。

notes() { 
  echo Type some notes. Hit Ctrl-D to quit.
  while read line; do 
    echo $(date +%T) "$line"
  done | tee -a log.txt
}

答案 2 :(得分:2)

您可以将date电话缩短一点:

date +%H:%M:%S

与:

相同
date +%T