我目前将 crontab 脚本输出重定向到某个存在的文件夹中的文件,如下所示:
echo "test" > `date "+/tmp/%Y%m%d_%H%M.log"`
我想将输出重定向到可能尚不存在的子文件夹(.../year/month/...
因此应该创建子文件夹:
echo "test" > `date "+/tmp/%Y/%m/%d_%H%M.log"`
我怎样才能做到这一点?
答案1
只需创建目录。mkdir-p
的标志可实现两件事:
- 创建整个路径
- 如果目录已经存在,请不要抱怨
所以:
mkdir -p $(date "+/tmp/%Y/%m/") && echo "test" > $(date "+/tmp/%Y/%m/%d_%H%M.log")
下次请在 unix.stackexchange 上询问类似问题,这里有点离题。
答案2
您需要使用mkdir -p
以下命令创建文件夹:
mkdir -p `date "+/tmp/%Y/%m/"`
然后,您就可以安全地执行 echo 命令。
echo "test" > `date "+/tmp/%Y/%m/%d_%H%M.log"`