如何编写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`