Linux/Unix Shell脚本:按星期几创建文件名

时间:2020-01-09 10:37:27  来源:igfitidea点击:

我需要使用以下格式创建日志文件:

myapp_monday.log
myapp_tuesday.log
...
myapp_sunday.log

在Linux或Unix操作系统下,如何在星期几中创建日志文件名?
您可以使用date命令显示当前日期和时间。
您可以格式化日期以提供以+开头的字符串,以获取星期几,如下所示:

$ date +"%A"

其中:

  • +%A以完整格式(例如星期二)获取工作日
  • +%a以缩写格式(即星期二)获取工作日
  • +%u获取从星期一(1)开始的星期几,即mtwtfss
  • +%w获取从星期日(0)开始的星期几,即smtwtfs

使用以下语法将工作日存储到shell变量中:

 
_dow="$(date +'%A')"
echo "$_dow"
 
## Get day of week starting with Monday (1), i.e. mtwtfss  (see above for syntax) ##
_dow="$(date +'%u')"
echo "$_dow"

要创建包含星期几的文件名:

#!/bin/bash
 
_dow="$(date +'%A')"
_log="myapp_${_dow}.log"
echo "My log filename: ${_log}"

输出示例:

My log filename: myapp_Wednesday.log