• shell命令 $(cd `dirname $0`; pwd);[ "$#" -ne "8" ];exit;declare;`date +%s`


    • $(cd `dirname $0`; pwd)

    在命令行状态下单纯执行 $ cd `dirname $0` 是毫无意义的。因为他返回当前路径的"."。这个命令写在脚本文件里才有作用,他返回这个脚本文件放置的目录,并可以根据这个目录来定位所要运行程序的相对位置。

    •  declare  
    +/-:"-"可用来指定变量的属性,"+"则是取消变量所设的属性;
    -f:仅显示函数;
    r:将变量设置为只读;
    x:指定的变量会成为环境变量,可供shell以外的程序来使用;
    i:[设置值]可以是数值,字符串或运算式。

    declare命令用于声明和显示已存在的shell变量。当不提供变量名参数时显示所有shell变量。declare命令若不带任何参数选项,则会显示所有shell变量及其值。declare的功能与typeset命令的功能是相同的。   

    • if [ "$#" -ne "8"  ]; then
    $# 表示提供到shell脚本或者函数的参数总数;
    $1 表示第一个参数。
    -ne 表示 不等于

    另外:
    整数比较
    -eq 等于,如:if ["$a" -eq "$b" ]
    -ne 不等于,如:if ["$a" -ne "$b" ]
    -gt 大于,如:if ["$a" -gt "$b" ]
    -ge 大于等于,如:if ["$a" -ge "$b" ]
    -lt 小于,如:if ["$a" -lt "$b" ]
    -le 小于等于,如:if ["$a" -le "$b" ]
    < 小于(需要双括号),如:(("$a" < "$b"))
    <= 小于等于(需要双括号),如:(("$a" <= "$b"))
    > 大于(需要双括号),如:(("$a" > "$b"))
    >= 大于等于(需要双括号),如:(("$a" >= "$b"))

    另外:$?是shell变量,表示"最后一次执行命令"的退出状态.0为成功,非0为失败.
    • exit

      Linux exit命令用于退出目前的shell。

      执行exit可使shell以指定的状态值退出。若不设置状态值参数,则shell以预设值退出。状态值0代表执行成功,其他值代表执行失败。exit也可用在script,离开正在执行的script,回到shell。

    • `date +%s`

      GNU的date提供+%s(小写s), 能打印出自1970-01-01 00:00:00到当前时间的秒数.

      这可能大家都不陌生,但有两点需要注意:

      1. %s存在于GNU扩展版本.像在solaris等UNIX上没有该参数.

      2. 1970-01-01 00:00:00指的是UTC时间. (date -u得出来的时间)

      协调世界时,又称世界标准时间,简称UTC
      整个地球分为二十四时区,每个时区都有自己的本地时间。在国际无线电通信场合,为了统一起见,使用一个统一的时间,称为通用协调时(UTC, Universal Time Coordinated)。UTC与格林尼治平均时(GMT, Greenwich Mean Time)一样,都与英国伦敦的本地时相同。

      %a 星期几的简写
      %A 星期几的全称
      %b 月分的简写
      %B 月份的全称
      %c 标准的日期的时间串
      %C 年份的后两位数字
      %d 十进制表示的每月的第几天
      %D 月/天/年
      %e 在两字符域中,十进制表示的每月的第几天
      %F 年-月-日
      %g 年份的后两位数字,使用基于周的年
      %G 年分,使用基于周的年
      %h 简写的月份名
      %H 24小时制的小时
      %I 12小时制的小时
      %j 十进制表示的每年的第几天
      %m 十进制表示的月份
      %M 十时制表示的分钟数
      %n 新行符
      %p 本地的AM或PM的等价显示
      %r 12小时的时间
      %R 显示小时和分钟:hh:mm
      %S 十进制的秒数
      %t 水平制表符
      %T 显示时分秒:hh:mm:ss
      %u 每周的第几天,星期一为第一天 (值从0到6,星期一为0)
      %U 第年的第几周,把星期日做为第一天(值从0到53)
      %V 每年的第几周,使用基于周的年
      %w 十进制表示的星期几(值从0到6,星期天为0)
      %W 每年的第几周,把星期一做为第一天(值从0到53)
      %x 标准的日期串
      %X 标准的时间串
      %y 不带世纪的十进制年份(值从0到99)
      %Y 带世纪部分的十制年份
      %z,%Z 时区名称,如果不能得到时区名称则返回空字符。
      %% 百分号

      CST是美国中央时区的缩写。在部分unix操作系统版本里,有时也会代表China Stardard Time,所以有时候会造成混淆

  • 相关阅读:
    Http协议和Tomcat服务器
    类加载器与反射
    线程安全
    String、Stringbuffer、Stringbuilder三者之间的区别
    iOS 开发,工程中如何混合使用 ARC 和非ARC
    dll的静态调用、动态调用
    Qt安装—搭建VS2008+QT开发环境
    C++中的引用与指针的区别
    SVN分支与合并
    (补充知识)DLL 中 .DEF文件的使用
  • 原文地址:https://www.cnblogs.com/wj94/p/8342699.html
Copyright © 2020-2023  润新知