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的值
   

后记:无

最新文章

  1. 相机变换与Ray-Casting
  2. jxl读取Excel表格数据
  3. Win+R命令大全
  4. SimPholders2 模拟器 App 文件路径查看工具
  5. CSS设计模式之三权分立模式篇
  6. psutil
  7. 【模拟】Codeforces 671A Recycling Bottles
  8. 捕获input 文本框内容改变的事件(onchange,onblur,onPropertyChange比较)
  9. "use strict"详解
  10. protobuf/android 交叉编译笔记
  11. SharePoint 2013配置开发环境,需安装VS2012插件
  12. java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.paipaixiu/com.example.paipaixiu.MASetSomeThing}: android.view.InflateException: Binary XML file line #19: Attempt to invo
  13. 连接H3C交换机的Console口连不上
  14. spring boot 集成 Filter 的两种方式
  15. 杭电acm习题分类
  16. Scala进阶之路-面向对象编程之类的成员详解
  17. Error Code: 1030. Got error -1 from storage engine
  18. ESET Smart Security 免费60天
  19. Easy UI分页控件修改刷新方法后触发两次请求
  20. IPv4地址范围和一些小知识

热门文章

  1. Android开发中,有哪些让你觉得相见恨晚的方法、类或接口?
  2. Android - ContentProvider机制
  3. XML数据的读取—数据库配置文件
  4. TODO、FIXME和XXX转载
  5. Android开发中在一个Activity中关闭另一个Activity
  6. Smokeping如何清空图标数据
  7. == 与 is
  8. 汉诺塔 Hanoi Tower
  9. Python交互模式下方向键出现乱码
  10. Windows编程中的若干难点 - Windows程序设计(SDK)007