如何编写Shell脚本以将grep数据定向到基于日期的文件名中?

时间:2020-03-06 14:50:34  来源:igfitidea点击:

我基本上想这样做:

grep 'example.com' www_log > example.com.YYYY-MM-DD-H:i:S.log

...文件名当然是example.com.2008-09-27-11:21:30.log

然后,我将其放在crontab中以每天运行。

解决方案

详细方法:

grep 'example.com' www_log > `date +example.com.%Y-%m-%d-%H:%M:%S.log`

简洁的方法:

grep 'example.com' www_log > `date +example.com.%F-%T.log`

grep 'example.com' www_log > example.com.$(date +%F-%T).log

这是我通常使用的另一种方式:

grep 'example.com' www_log > example.com.`date +%F-%T`.log

反引号是命令替换的一种形式。另一种形式是使用$():

$(command)

与以下内容相同:

`command`