Linux、Solaris 系统根据时间动态创建目录或文件夹的方法
bash-3.2#
bash-3.2# date '+%Y%m%d%H%M%S'
20160129131402
bash-3.2# mkdir $(date '+%Y%m%d%H%M%S')
bash-3.2# ls
20160129131418
bash-3.2#
上面语句在命令行中单句执行是没有问题的,但在crontab(计划任务)中执行时会报语法错误
这样解决:
建立一个shell的文本文件,并命名为test.csh
!/bin/csh
set DIRNAME=`date '+%Y%m%d%H%M%S'`
mkdir test/${DIRNAME}
exit
测试一下能否正常执行
bash-3.2# ./test.csh
确认结果没有问题。
编辑计划任务
bash-3.2# crontab -e
添加:
5,10 * * * * ./test.csh
或
5,10 * * * * ./test.csh > /dev/null
保存,退出即可。
参考:
Solaris中cron命令的设置(定时任务),在Linux稍微有点区别
crontab -e 编辑画面
crontab -l 查询画面
基本格式 :
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
bash-3.2#
bash-3.2# date '+%Y%m%d%H%M%S'
20160129131402
bash-3.2# mkdir $(date '+%Y%m%d%H%M%S')
bash-3.2# ls
20160129131418
bash-3.2#
上面语句在命令行中单句执行是没有问题的,但在crontab(计划任务)中执行时会报语法错误
这样解决:
建立一个shell的文本文件,并命名为test.csh
!/bin/csh
set DIRNAME=`date '+%Y%m%d%H%M%S'`
mkdir test/${DIRNAME}
exit
测试一下能否正常执行
bash-3.2# ./test.csh
确认结果没有问题。
编辑计划任务
bash-3.2# crontab -e
添加:
5,10 * * * * ./test.csh
或
5,10 * * * * ./test.csh > /dev/null
保存,退出即可。
参考:
Solaris中cron命令的设置(定时任务),在Linux稍微有点区别
crontab -e 编辑画面
crontab -l 查询画面
基本格式 :
* * * * * command
分 时 日 月 周 命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令