zoukankan      html  css  js  c++  java
  • Linux Gvim shell 替换:变量替换,命令替换,转义字符

    替换:如果表达式中含有特殊字符,shell会进行替换。例如在双引号中使用变量就是一种替换。转义字符也是一种替换

    #!/bin/bash
    
    a=10
    echo -e "Value of a is ${a} 
    "

    #-e表示对转义字符替换,不加的话输出如下#

    echo "Value of a is ${a} 
    "

    转义字符替换

    下列转义字符可用于echo

    1.        \       反斜杠        
    2.     a      警报,响铃 ?
    3.           退格 (删除键)?
    4.     f       换页,将当前的位置移到下页开头
    5.            换行
    6.             回车
    7.             一个缩进
    8.     v        垂直制表符 ?

    示例如下:

    1 echo -e "Value of a is ${a} \"
    2 echo -e "Value of a is ${a} 	 ${a}"

    可以使用 echo 命令的 -E 选项禁止转义,默认也是不转义的;使用 -n 选项可以禁止插入换行符


    命令替换

    shell先执行命令,将输出结果暂时保存,在适当的地方输出
    语法    `command`   ``是Esc下面那个

    示例如下:

    1 DATE=`date`
    2 echo "Date is ${DATE}"
    3 
    4 USERS=`who | wc -l`
    5 echo "Logged in usr are $USERS"
    6 
    7 UP=`date ; uptime`
    8 echo "Uptime is ${UP}"

    变量替换

    可以根据变量的状态(空?定义?)来改变它的值
    可以使用的变量替换形式如下
    1.      ${var}                变量原本的值
    2.      ${var:-word}         如果变量var为空或已被unset,那么返回word,但不改变其值
    3.      ${var:=word}        如果变量var为空或已被unset,那么返回word,并将其值设为                word
    4.      ${var:?message}      如果变量var为空或已被unset,那么将message送到标准错误输               出,可以用来检测变量var是否可以被正常赋值
                               若此替换出现在shell脚本中,那么脚本将停止运行        
    6.      ${var:+word}        如果变量var被定义,那么返回word,但不改变其值

    示例如下:

     1 echo ${var:-"Variable is not set"}
     2 echo " 1-Value of var is ${var} "
     3 
     4 unset var
     5 echo ${var:+"This is default value"}
     6 echo "3-Value of var is ${var}"
     7 
     8 echo ${var:="Variable is not set"}
     9 echo " 2-Value of var is ${var} "
    10 
    11 var="ChenMo"
    12 echo ${var:?"Print this message"}    #把ChenMo输出终端#
    13 echo "4-Value of var is ${var}"
    14 
    15 var="Matto"
    16 echo ${var:+"This is default valus"}
    17 echo "Value of var is ${var}"









  • 相关阅读:
    169. Majority Element
    283. Move Zeroes
    1331. Rank Transform of an Array
    566. Reshape the Matrix
    985. Sum of Even Numbers After Queries
    1185. Day of the Week
    867. Transpose Matrix
    1217. Play with Chips
    766. Toeplitz Matrix
    1413. Minimum Value to Get Positive Step by Step Sum
  • 原文地址:https://www.cnblogs.com/blog4matto/p/5565033.html
Copyright © 2011-2022 走看看