我试图用时间戳预先安排日志条目,但生成的时间戳似乎并没有随时间变化:
#!/bin/sh NOW=$(date +"%Y-%m-%d %H:%M:%S") echo "$NOW Logging something" sleep 2 echo "$NOW Logging something else"
输出为:
2012-03-02 12:32:49 Logging something 2012-03-02 12:32:49 Logging something else
有人知道我在做什么错吗?
与以下对比:
echo“`date +”%Y-%m-%d%H:%M:%S“logging一些东西” 睡2 echo“`date +”%y-%m-%d%H:%M:%S“`logging别的东西”
在你的版本中,NOW被定义为一次,并且保持与脚本的其余部分一样。 以上,date是在“回声”时生成的。
如果您不想在每次使用某个function时添加date:
#!/ bin / sh的 logtest(){ echo“`date +”%Y-%m-%d%H:%M:%S“`$ 1” } loggingtesting“logging的东西” 睡2 logtest“logging别的东西”
老的logger
命令有什么问题? 🙂
#!/bin/sh logger -t yourprogram Hello, this is a message sleep 2 logger -t yourprogram Hello, this is another message
logging器还允许您使用系统日志优先级。
当您声明variables时,您只创build一次时间戳。 它不会自动更新。
尝试这个:
echo `date +"%Y-%m-%d %H:%M:%S"` "Logging something"