我正在使用'tee'命令将我的shell程序的日志重定向到一个文件中。
我的要求是使用文件名附加当前日期和时间。
sh sample.sh | tee logfile_$date.txt #sample command
输出日志文件:
logfile_2013-08-22-14.txt #yyyy-mm-dd-hh format
我怎样才能实现它?
答案 0 :(得分:8)
由于date '+%Y-%m-%d-%H'
返回2013-08-21-10
类型的日期(年 - 月 - 日 - 小时),您可以使用以下内容:
sh sample.sh | tee logfile_$(date '+%Y-%m-%d-%H').txt
例如,让我们打印hello
并将其存储在文件中:
$ echo "hello" | tee logfile_$(date '+%Y-%m-%d-%H').txt
hello
$ ls logfile_*
logfile_2013-08-21-10.txt
如您所见,在屏幕中出现字符串的同时创建了名为logfile_2013-08-21-10.txt
的文件。