美文网首页
linux下shell文件编辑的一些简单操作

linux下shell文件编辑的一些简单操作

作者: 半夏半暖半孤单 | 来源:发表于2016-09-07 20:41 被阅读61次

    1.注释

    #:注释单行

    2.标识符命名规范

    硬性规范:

    1>标识符只能由数字,下划线,字母构成

    2>不能由数字开头

    3>不能与shell关键字相同

    建议:

    1>禁止使用汉语拼音,多查查字典

    2>使用驼峰命名法,或者使用下划线连接

    3>见名知义

    3.变量的定义

    1>变量一旦定义出来,就必须给他赋值

    2>变量定义时,=号左右不要有空格

    3>变量是可以重新赋值

    4>如果变量定义成readonly,代表着这个变量不能被再次赋值

    注意:shell脚本变量在没有定义的前提下,直接使用,这个变量默认为空

    4.变量的使用

    1>变量在使用时要在变量前加$

    2>在删除变量时,不需要加$

    5.echo命令

    1>用来输出变量的值

    2>会自动换行

    3>如果想对\c,这种特殊字符进行转义:

    (1)如果是第一种运行方式:./1.sh,必须要对echo开启转义echo -e

    value="hello world"

    echo -e "${value}\c"

    echo "ni hao"

    (2)如果是第二种运行方式:sh 1.sh,则不需要对echo开启转义

    value="hello world"

    echo  "${value}\c"

    echo "ni hao"

    4>\c不换行,\n换行,\t相当于tab键

    6.变量使用加{},不是加()

    1>避免使用不存在的变量

    2>增加程序的可读性

    7.unset删除变量

    1>删除变量不需要加$

    2>删除变量之后,再使用这个变量的时候默认为空

    3>如果这个变量是只读变量,是不能删除这个变量的

    8.字符串相关处理方法

    1>求字符串长度

    value="hello world"

    length=${#value}

    echo ${length}

    2>拼接字符串

    value="hello world"

    value1="ni hao"

    value2="${value}      ${value1}"

    echo ${value2}

    注意:拼接时,中间空出的空格,无论空出多少,只会默认空出一格

    3>截取字符串

    value="hello world"

    value1=${value:6:5}

    echo ${value1}

    注意:字符串从位置0开始,截取字符串时,要说明截取的起始位置和截取长度

    9.echo输出加"",'',不加任何东西

    1>加'',如果在''号里面输出变量,会把变量当成字符来处理

    2>不加任何东西,程序可读性变低,分不清哪些是命令,哪些是变量

    3>加了"",会避免上面的问题

    注意:建议使用双引号""

    10.printf(格式化输出命令)

    1>不用像echo命令那么那么复杂

    2>按照一定的格式输出

    3>输出双引号里面的东西

    value="hello"

    value1="world"

    printf "value=%s\nvalue1=%s\n" "$value" "$value1"

    %d:输出十进制整数

    %s:输出字符串

    %c:输出字符

    %f:输出带小数点的数

    注意:%d和%c输出类型比较严谨

    11.read命令

    1>等待输入的值,将值赋给read后面的变量

    printf "请输入一个数:"

    read num

    printf "请再次输入一个数:"

    read num1

    printf "num=%s\nnum1=%s\n" "$num" "$num1"

    12.整数基本运算符

    1>算术运算+ 、-、\*、/、%

    value1=1

    value2=2

    value3=`expr $value1 + $value2`

    value4=`expr $value1 - $value2`

    value5=`expr $value1 \* $value2`

    value6=`expr $value1 / $value2`

    value7=`expr $value1 % $value2`

    注意:$()和``代表取出数据的结果集

    2>关系运算符\>、\>=、\<、\<=、\=、\!=

    value1=12

    value2=123

    result1=`expr $value1 \>= $value2`

    result2=`expr $value1 \== $value2`

    result3=`expr $value1 != $value2`

    echo $result1

    echo $result2

    echo $result3

    注意点:\=、\!=,比较特殊,看编译器的支持,

    3>如果数字关系运算符与[]连用,使用下面的方式比较

    -eq:

    -ne:

    -gt:

    -lt:

    -ge:

    -le:

    eq:equal

    n:not

    g:greater

    l:less

    t:than

    4>逻辑运算符

    &&:而且

    ||:或者

    13.if语句的使用

    1>

    if [ 条件 ]

    then

    语句1

    fi

    2>

    if [ 条件 ]

    then

    语句1

    else

    语句2

    fi

    3>

    if [ 条件 ]

    then

    语句1

    elif [ 条件 ]

    then

    语句2

    else

    语句3

    fi

    注意点:

    1>如果有else,else只能放在最后面

    2>if语句是可以嵌套的,最多3层

    14.${},$(),$(())的区别

    15.let命令

    1>计算整数

    2>除了可以运算+ - * / %,还可以运算+=  -=  /=  *=  %=

    3>还可以计算++ --

    4>运算时不需要添加$

    num1=3

    let num2=++num1  #num1=num1+1,num2=num1

    let num2=num1++  #num2=num1,num1=num1+1

    明天接着学习更新持续进行...

    相关文章

      网友评论

          本文标题:linux下shell文件编辑的一些简单操作

          本文链接:https://www.haomeiwen.com/subject/clzjettx.html