Shell - 6

来源:互联网 发布:国云数据裁员 编辑:程序博客网 时间:2024/06/05 05:37

前篇讲到,我们习惯在一系列脚本操作上,首先输出当前路径,然后输出当前的时间。

这里我们学习如何获取当前的时间。

参考:

http://www.cnblogs.com/mfryf/archive/2012/03/23/2413362.html

获取时间的方式格式各样,这里给出一个例子:

#!/bin/shDATE=`date +%Y%m%d`echo $DATE;


注意Shell的变量不用去声明和定义,直接写一个就可以用了,但是在引用变量的时候,需要加一个$取变量符号

这样输出的事当前的年月


那如果有时候我们不需要输出当前的时间,而自己输入一个时间呢?Shell语言更像一种面相过程的语言,我们用逻辑思路就可以得到想要的实现方式:

思路:

1.我们需要自己输入,所以需要输入变量,前面一个文章已经说得很清楚,$#就是取当前脚本输入参数的方法


2.我们需要引入一个判断,如果有输出则用输入的,如果没有呢?用当前的,Shell的if语句,参考:

http://www.dutycode.com/post-46.html


这样,我们就可以得到想要的代码了:

if [ $# -eq 1 ]; thenDATE=$1elseDATE=`date +%Y%m%d`fi

稍作解析:

$#表示脚本的参数,如果参数个数为1,则执行,将参数一赋予变量DATE,否则,用当前的计算方式,fi为结束逻辑判断


结合,前面的输出绝对路径,一个脚本的习惯开头就得到了:

#!/bin/shcd `dirname $0`;echo "当前目录:"`pwd`if [ $# -eq 1 ]; thenDATE=$1elseDATE=`date +%Y%m%d`fiecho $DATE;






0 0
原创粉丝点击