shell mysql date_shell中date使用总结-基于自动定期备份mysql实践-阿里云开发者社区...

------------------------时间的格式

date [OPTION]... [+FORMAT]

echo `date 空格 +'时间格式串'`

调用date必须加符号反引号``,表示执行里面的结果

当为: `date +'%Y%m%d-%H:%M:%S'`没有时分秒的情况下,不需要用''将格式包含起来。但是增加时分秒后,

如果还这样子用  `date +%Y%m%d %H:%M:%S` 则会报错:

date: extra operand `%H:%M:%S'

将其看成是额外的参数去了。如果日期与时间有符号连接起来,则不会:

%Y%m%d-%H:%M:%S,关键是有空格,程序误判了。

经验:习惯最好是将格式用引号括起来。可以是单引号,也可以是双引号。根据shell变量定义的情况来。

echo `date + "%Y%m%d %H:%M:%S"` 会直接输出在屏幕上。

定义在shell变量中的方式:

DATE="`date +'%Y%m%d-%H:%M:%S'`"

这里最外面已经有个双引号。里面格式用单引号括起来。

+就表示显示时间,而非设置时间。格式设定为一个加号后接数个标记

如果不确定时的测验方式:

1、在终端使用echo。会直接输出在屏幕上。

2、date --help 会显示帮助信息

date实际上就是一个命令。

-d, --date=STRING         display time described by STRING, not `now'

date +%y%m%d --date=5 days ago

如果不加--date,默认是显示当前时间,按照格式"%y%m%d"进行显示。

现在加一个--date参数,就不是显示now了。

假设现在是:14:45

那么,echo `date +"%Y%m%d %H:%M:%S" --date="5 days ago"`

得到的时间是:5天之前的现在时间——20130824 14:45:00

===================================关于echo命令

在shell中。

方式1、echo "要输出的字符串"

方式2、 echo 要输出的字符串

在某些情况下,使用引号与不使用都没区别。

要让shell把里面的结果执行的话,则是

echo "``"

echo "-------------------$(date +"%y-%m-%d %H:%M:%S")----------------"

我可以把()看成是``的替代符号。

要输出换行\n的时候,必须调用 -e 参数

echo -e  "输出\n输出"

============================================没搞清楚什么样的字符才是--date=""里面的合法格式呢?

假设我要想显示上个月,怎么使用

date --date="LAST MONTH"  +"%Y-%m"

技巧:如果不确定,自己到shell命令行下面去试。

如果是非法的格式,则会提示的,比如,我传递一个:--date="LAST"

提示为date: invalid date `LAST'

.................

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值