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}"









  • 相关阅读:
    MongoDB 生态 – 可视化管理工具
    SOLR对多个(关联)表创建索引
    sublime 插件zen coding
    12/12工作笔记
    阅读《深入理解JavaScript定时机制》
    继续谈论XSS
    支付宝快捷支付模型
    谈论XSS
    生产者消费者模型
    如何根据iframe内嵌页面调整iframe高宽续篇
  • 原文地址:https://www.cnblogs.com/blog4matto/p/5565033.html
Copyright © 2011-2022 走看看