shell中如果存在一些特殊的字符,就需要进行替换,可进行命令替换、变量替换、转义替换

1、转义字符的替换

shell中包含以下的转移字符

\a   响铃警报\\   反斜杠

\b  退格(删除键)

\f   换页(FF),将当前位置移到下页开头

\n  换行

\r   回车

\t   水平制表符

\v   垂直制表符

以上转移字符都可以使用在echo中,通过使用-e 完成转义字符的替换,否者会原样输出,也可通过-E 禁止转移,通过-n可以禁止插入换行符

2、命令替换

如下声明将命令date赋值给DATE,注意这里的命令必须通过反括号扩住,而不是单引号

 kk@kk-pc ~/shell
$ DATE=`date` kk@kk-pc ~/shell
$ echo $DATE
2015年07月 6日, 周一 ::

3、变量替换

变量替换时根据是否为空,是否定义进行的,并可以改变变量的值

变量的替换形式:

                  形式                                                                                                说明
${var} 变量本来的值
${var:-word} 如果变量var为空或者已被删除(unset),那么返回word,但不会改变var的值
${var:=word} 如果变量var为空或者已被删除(unset),那么返回word,同时将var的值设置为word
${var:?message} 如果变量var为空或者已被删除(unset),那么将消息message送到标准错误输出,可以用来检测变量var是否可以被正常赋值。若此替换出现在shell脚本中,那么脚本将停止运行
${var:+word} 如果变量var被定义,那么返回word,但不改变var的值
   

后记:无

shell中的替换的更多相关文章

  1. 【linux】shell中命令替换$(cmd)和符号`cmd`

    来源:https://zhidao.baidu.com/question/485498670.html 作用: $(cmd)和`cmd`的作用是相同的,在执行一条命令时,会先将其中的 ``,或者是$( ...

  2. 关于Shell中命令替换$(...)与后置引用`...`的不同

    命令替换 在bash中,$( )与` `(反引号)都是用来作命令替换的.命令替换与变量替换差不多,都是用来重组命令行的,先完成引号里的命令行,然后将其结果替换出来,再重组成新的命令行. $( )与`` ...

  3. 在shell中使用sed命令替换/为\/

    sed命令相关: https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2856901.html https://www.cnblogs.com/D ...

  4. linux shell 中的数组的取值 遍历 替换 删除操作

    引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...

  5. awk中引用shell变量执行替换的脚本

    遇到问题: 现在有两个脚本,我想 将file1中的内容按file2来匹配 [root@154 home]# cat file1 3-1-1 POTV=1,POTA=0,POTP=2 1-4-76 PO ...

  6. shell中{}的妙用

    shell中${}的妙用   1. 截断功能 ${file#*/}:       拿掉第一条/及其左边的字符串:dir1/dir2/dir3/my.file.txt ${file##*/}:    拿 ...

  7. 任督二脉之Shell中的正则表达式

    VBird说学习Linux,掌握了Shell和正则就相当于打通了任督二脉,此后能力的成长才会突飞猛进. Shell的基础学习之前已经总结了一篇博客:http://www.cnblogs.com/jyz ...

  8. shell中读写mysql数据库

    本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...

  9. shell中的大括号和小括号

      1.shell中的大括号和小括号   1.${var} 2.$(cmd) 3.() 和 {} 4.${var:-string}, ${var:+string},  ${var:=string}, ...

随机推荐

  1. 二叉树(二叉链表实现)JAVA代码

      publicclassTest{       publicstaticvoid main(String[] args){           char[] ch =newchar[]{'A','B ...

  2. css04使用外部样式

    1.创建一个新的html页面 <!DOCTYPE html> <html> <head lang="en"> <meta charset= ...

  3. asp.net设置元素css的属性

    controls.style.Add("css名称","css值") 添加class规则 control.cssclass="str_cssname& ...

  4. jQuery 基本实现功能模板

    下面是列出了基本功能的实现 <!DOCTYPE html> <html> <head> <script src="http://libs.baidu ...

  5. JavaScript Arguments 实现可变参数的函数,以及函数的递归调用

    //可变参数的函数 注:也可以使用对象作为参数来实现 function Max() { var temp = arguments[0] || 0; for (var i = 1; i < arg ...

  6. json数据返回

    <script type="text/javascript"> function xmlpage(){ var xhr=new XMLHttpRequest(); xh ...

  7. The Primo ScholarRank Technology: Bringing the Most Relevant Results to the Top of the List

    By Tamar Sadeh, Director of Marketing In today’s world, users’ expectations for a quick and easy sea ...

  8. php经典面试题

    1. 用PHP打印出前一天的时间,打印格式是2007年5月10日 22:21:21 2. PHP代码如下:$a="hello"; $b=&$a;unset($b);$b=& ...

  9. javascript回调函数

    function $$(f) { if (typeof f == 'function') {//f是一个函数 f(); } else { alert('not a function'); } } $$ ...

  10. php中文匹配

    PHP判断字符串中是否含有中文 <? $str = "测试中文"; echo $str; echo "<hr>"; //if (preg_ma ...