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'
.................
shell中date使用总结-基于自动定期备份mysql实践的更多相关文章
- javascript 的Date 格式化, 模仿shell中date命令的格式
原文:javascript 的Date 格式化, 模仿shell中date命令的格式 shell 中显示当前的日期 [root@localhost]$ date '+%Y-%m-%d %H:%M:%S ...
- shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机
shell编程系列25--shell操作数据库实战之备份MySQL数据,并通过FTP将其传输到远端主机 备份mysql中的库或者表 mysqldump 常用参数详解: -u 用户名 -p 密码 -h ...
- 【mysql】备份篇2:使用java程序定期备份mysql数据库
承接备份篇1, 在备份篇1中,使用dat文件加+系统计划任务程序完成mysql定期备份任务 在这一篇,备份使用java程序定期备份mysql数据库. 下面代码和程序思想给出: package com. ...
- Centos使用crontab自动定时备份mysql的脚本
在我们网站上线之后免不了需要备份数据库,为什么要备份呢?我给大家列出了3个理由. 1.防止数据丢失 2.防止数据改错了,可以用来恢复 3.方便给客户数据 以 上几点告诉我们要经常备份,当然我今天给大家 ...
- shell中date命令对month进行加减操作的bug
shell脚本中如何取上个月的月份呢?很容易能想到下面的命令: date +%Y%m -d '-1 month' 或者 date +%Y%m -d 'last month' 在大部分情况下这个命令 ...
- centos7 自动定时备份mysql数据库
shell脚本:mysqlbak.sh #!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbinexpo ...
- shell中读写mysql数据库
本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...
- linux shell中读写操作mysql数据库
本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...
- 远程linux服务器mysql数据库定期备份和删除
网上已经有部分关于Linux下定期备份mysql的方法,但是很多步骤不够详细,不适合新手,自己琢磨了很久,终于搞定了. 1.Linux服务器一般是ssh协议,如果本地也是Linux环境,可以直接通过s ...
随机推荐
- Java String首字母大写
一種寫法參考 public String upperFirstChar(String input) { if (input == null || "".equals(input)) ...
- java文件传输接口
开发的时候碰到这样的需求:需要在一个系统(客户端发送请求)中将文件传输至另外一个系统(服务端接收)中去的实现方式,可以批量传输文件,代码如下: 客户端请求: public String upLoadF ...
- hive元数据研究
hive的元数据存放在关系型数据库中,元数据中存储了hive中所有表格的信息,包括表格的名字,表格的字段,字段的类型,注释.这些信息分散的存放在各个表中,给定一个hive中的表格名字,查询这个表中含有 ...
- C# Split() 去除 \r\n 分组
str为读入的文本string[] ReadText = str.Replace("\r\n", "@").Split('@'); 转自 http://zhid ...
- sudo 的介绍
http://chenfage.blog.51cto.com/8804946/1830424
- Atitti html5 h5 新特性attilax总结
Atitti html5 h5 新特性attilax总结 Attilax觉得不错的新特性 3.语义Header和Footer (The Semantic Header and Footer) 8.占位 ...
- lua -- 字体闪烁
-- 这里是实现控件的闪烁,不能将一个局部的动作变量,赋给两个控件来动作,只能一个控件对应一个动作 function UIBagController:ShowEffect( ) local tGood ...
- java park unpark
https://blogs.oracle.com/dave/a-race-in-locksupport-park-arising-from-weak-memory-models https://blo ...
- 6 Multi-Cloud Architecture Designs for an Effective Cloud
https://www.simform.com/multi-cloud-architecture/ Enterprises increasingly want to take advantage of ...
- 把虚拟教练带回家,「EuMotus」想用AI实现高精度运动反馈系统
https://36kr.com/p/5089139.html 无需穿戴设备,只需一个红外摄像头和+已安装好EuMotus专利软件的手提电脑 由政府主导的高达2200亿美金的健身与运动支出,15%的健 ...