shell scripts小记2

使用date命令转换基础时间秒为年月日:

命令为:

date -d @1281161747

注意一定不要忘记符号“@”

 #date 获取当前时间

  #date -d "-1 week" +%Y%m%d 获取上周日期(day,month,year,hour)

  #date --date="-24 hour" +%Y%m%d 同上

  date_now=`date +%s` shell脚本里面赋给变量值

  %% 输出%符号

  %a 当前域的星期缩写 (Sun..Sat)

  %A 当前域的星期全写 (Sunday..Saturday)

  %b 当前域的月份缩写(Jan..Dec)

  %B 当前域的月份全称 (January..December)

  %c 当前域的默认时间格式 (Sat Nov 04 12:02:33 EST 1989)

  %C n百年 [00-99]

  %d 两位的天 (01..31)

  %D 短时间格式 (mm/dd/yy)

  %e 短格式天 ( 1..31)

  %F 文件时间格式 same as %Y-%m-%d

  %h same as %b

  %H 24小时制的小时 (00..23)

  %I 12小时制的小时 (01..12)

  %j 一年中的第几天 (001..366)

  %k 短格式24小时制的小时 ( 0..23)

  %l 短格式12小时制的小时 ( 1..12)

  %m 双位月份 (01..12)

  %M 双位分钟 (00..59)

  %n 换行

  %N 十亿分之一秒(000000000..999999999)

  %p 大写的当前域的上下午指示 (blank in many locales)

  %P 小写的当前域的上下午指示 (blank in many locales)

  %r 12小时制的时间表示(时:分:秒,双位) time, 12-hour (hh:mm:ss [AP]M)

  %R 24小时制的时间表示 (时:分,双位)time, 24-hour (hh:mm)

  %s 自基础时间 1970-01-01 00:00:00 到当前时刻的秒数(a GNU extension)

  %S 双位秒 second (00..60);

  %t 横向制表位(tab)

  %T 24小时制时间表示(hh:mm:ss)

  %u 数字表示的星期(从星期一开始 1-7)

  %U 一年中的第几周星期天为开始 (00..53)

  %V 一年中的第几周星期一为开始 (01..53)

  %w 一周中的第几天 星期天为开始 (0..6)

  %W 一年中的第几周星期一为开始 (00..53)

  %x 本地日期格式 (mm/dd/yy)

  %X 本地时间格式 (%H:%M:%S)

  %y 两位的年(00..99)

  %Y 年 (1970…)

  例子:编写shell脚本计算离自己生日还有多少天?

  read -p "Input your birthday(YYYYmmdd):" date1

  m=`date --date="$date1" +%m` #得到生日的月

  d=`date --date="$date1" +%d` #得到生日的日

  date_now=`date +%s` #得到当前时间的秒值

  y=`date +%Y` #得到当前时间的年

  birth=`date --date="$y$m$d" +%s` #得到今年的生日日期的秒值

  internal=$(($birth-$date_now)) #计算今日到生日日期的间隔时间

  if [ "$internal" -lt "0" ]; then #判断今天的生日是否已过

  birth=`date --date="$(($y+1))$m$d" +%s` #得到明天的生日日期秒值

  internal=$(($birth-$date_now)) #计算今天到下一个生日的间隔时间

  fi

  echo "There is :$((einternal/60/60/24)) days." #输出结果,秒换算为天

作者“eonbell”

shell scripts小记2

时间: 2024-11-12 16:29:50

shell scripts小记2的相关文章

shell scripts小记

1 开头程序必须以下面的行开始(必须方在文件的第一行):#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在这个例子中我们使用/bin/sh来执行程序.当编写脚本完成时,如果要执行该脚本,还必须使其可执行.要使编写脚本可执行:编译 chmod +x filename 这样才能用./filename 来运行 2 注释在进行shell编程时,以#开头的句子表示注释,直到这一行的结束. 3 变量在shell编程中,所有的变量都由字符串组成,并且不需要对变量进行声明.要赋值给一个

chapte13:学习shell scripts之(1)简单的shell scripts

简单的说就是将一些shell的语法与命令写在里面,加上正则表达式,管道命令与数据流重定向等功能,以达到我们想要的目的. shell scripts用在系统管理上是一个很好的工具,但是用在处理大量计算时,则速度不够,且使用的CPU资源较多. 一.第一个scripts编写与执行 假设的我们写的第一个scripts文件名为shell.sh,执行的方法有如下几种: (1)直接命令执行:shell.sh文件要有rx(读与执行)的权限. 绝对路径:/home/chuiyuan/shell.sh 相对路径:在

第十三章、学习 Shell Scripts

1. 什么是 Shell Script 1.1 干嘛学习 shell scripts 1.2 第一支 script 的撰写与运行 1.3 撰写 shell script 的良好习惯创建 2. 简单的 shell script 练习 2.1 简单范例: 对谈式脚本, 随日期变化, 数值运算 2.2 script 的运行方式差异 (source, sh script, ./script) 3. 善用判断式 3.1 利用 test 命令的测试功能 3.2 利用判断符号 [ ] 3.3 Shell sc

清空系统日志shell scripts——自学笔记

这是一个清空系统日志的脚本: vim logmess_clean.sh #bin/bash        //该脚本所使用的shell解释器 cd /var/log/  //切换到存放日志目录 echo > messages  //清空日志 echo "logmessages is clean" //脚本执行完成后输出"日志清空" [[email protected] shellscripts]# ll    查看脚本的权限 total 4 -rw-r--r-

鸟哥的Linux私房菜——第十六章:学习Shell Scripts

视频链接: 1. 什么是 Shell Script       (shell写的脚本)1.1 干嘛学习 shell scripts? ()1.2 第一支 script 的撰写与执行1.3 撰写 shell script 的良好习惯建立 2. 简单的 shell script 练习: (read -p  date)3. 善用判断式:3.1 利用 test 指令的测试功能3.2 利用判断符号 [ ] 3.3 Shell script 的预设变数($0, $1...)4. 条件判断式:4.1 利用 i

0913&0915练习:shell Scripts、sed&awk

知识点梳理:点击链接进入 1.shell简介及变量.脚本相关概念 2.bash编程之:条件测试 3.bash编程之:算术运算 4.bash编程之:if语句                5.bash编程之:case语句.read与用户交互 6.bash编程之:流程控制 7.bash编程之:函数与数组 8.sed命令--流编辑器 9.awk命令--报告生成工具 练习1: 写一个脚本:如果某路径不存在,则将其创建为目录:否则显示其存在,并显示内容类型: 运行脚本测试: 练习2: 写一个脚本,完成如下

5 Shell Scripts for Linux Newbies to Learn Shell Programming – Part II

To Learn something you need to do it, without the fear of being unsuccessful. I believe in practicality and hence will be accompanying you to the practical world of Scripting Language. Learn Basic Shell Scripting This article is an extension of our F

鸟哥的Linux私房菜_基础版_学习笔记9:第十三章 学习 Shell Scripts

13.1 什么是 Shell scripts 13.1.1 干嘛学习 shell scripts 13.1.2 第一支 script 的撰写与运行 在 shell script 的撰写中还需要用到底下的注意事项: 命令的运行是从上而下.从左而右的分析与运行: 命令的下达就如同第五章内提到的: 命令.选项与参数间的多个空白都会被忽略掉: 空白行也将被忽略掉,并且 [tab] 按键所推开的空白同样视为空白键: 如果读取到一个 Enter 符号 (CR) ,就尝试开始运行该行 (或该串) 命令: 至於

[Linux] Shell Scripts

shell script 是利用 shell 的功能所写的一个"程序 (program)",这个程序是使用纯文本文件,将一些 shell 的语法与指令(含外部指令)写在里面, 搭配正则表达式.管线命令与数据流重导向等功能,以达到我们所想要的处理目的 shell script 用在系统管理上面是很好的一项工具,但是用在处理大量数值运算上, 就不够好了,因为 Shell scripts 的速度较慢,且使用的 CPU 资源较多,造成主机资源的分配不良 在Shell script 的文件中,指