将日期值追加到bash脚本中的目录路径

将日期值追加到bash脚本中的目录路径,bash,directory,mkdir,Bash,Directory,Mkdir,我正在编写一个脚本来存储前一天收集的日志文件。我希望将这些日志文件存储在一个目录路径中,每年每月如此:2016/Jan/01 我编写了以下命令来确定昨天的日期: DATE=$(date +%Y-%m-%d -d yesterday) 它将昨天的日期显示为yyyy-mm-dd 创建目录并附加以下值的最佳方法是什么: mkdir +%Y + '/' + -%m + '/' + -%d 此外,还可以将月份作为月份的前三个字母Jan,而不是数字01只要在mkdir中使用-p即可创建父目录,如果它们还

我正在编写一个脚本来存储前一天收集的日志文件。我希望将这些日志文件存储在一个目录路径中,每年每月如此:
2016/Jan/01

我编写了以下命令来确定昨天的日期:

DATE=$(date +%Y-%m-%d -d yesterday)
它将昨天的日期显示为
yyyy-mm-dd

创建目录并附加以下值的最佳方法是什么:

mkdir +%Y + '/' + -%m + '/' + -%d

此外,还可以将月份作为月份的前三个字母
Jan
,而不是数字
01

只要在
mkdir
中使用
-p
即可创建父目录,如果它们还不存在:

yesterday=$(date "+%Y/%m/%d" -d "yesterday")
mkdir -p "$yesterday"
注意:我使用
/
作为日期格式的分隔符,因此您已经拥有字符串
2016/05/24

这样做后,我得到:

$ tree 2016/
2016/
└── 05
    └── 24

2 directories, 0 files
man mkdir

   -p, --parents
          no error if existing, make parent directories as needed

mkdir-p“$(日期+%Y/%m/%d-d昨天)”
--这就是你想要的吗?非常感谢。有没有办法把月数转换成第一个字母?i、 e'May'而不是'05'Ahh我得到了-%b而不是%m