http://blog.csdn.net/nowayings/article/details/48492497
在shell脚本里常常需要获取系统时间来处理某项操作,今天系统的学习了一下如何获取系统时间。记录如下:
linux的系统时间在shell里是可以直接调用系统变量的如:
获取今天时期:date +%Y%m%d
或 date +%F
或 $(date +%y%m%d)
命令输出结果如下:
[root@centi-C sh]# date +%Y%m%d
20120727
[root@centi-C sh]# date +%F
2012-07-27
[root@centi-C sh]# date +%y%m%d
120727
一个例子
#/bin/bash
#filebak
#file executable: chmod 755 filebak
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
bakdir="/root/bak/"
filename="`date +%y%m%d`_etc.tar.gz"
if [ ! -x "$bakdir" ];then
mkdir $bakdir
fi
cd $bakdir
tar cvfz $filename /etc
添加到crontab
或使用crontab -e 命令添加定时任务:
0 1 * * * /bin/sh /usr/bin/fileback
crontab 的格式是
分 时 日 月 周 命令
*表示每隔最小单位,但是,分必须是明确的定义
因此,设定每小时执行一次的话,只需要指明每小时的哪一分钟执行就可以了
可以用
0 * * * * command 来设定每小时的0分钟执行命令