当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > Bash中的特殊字符

Unix/Linux
Linux crontab定时执行任务 命令格式与详细例子
linux 查看用户及用户组的方法
让Linux系统有效防御ARP攻击的实用技巧
Linux 常用软件列表
linux wget 一个强大的下载命令
linux 常用脚本、命令
linux 磁盘配额 简单介绍
Linux服务器架设笔记 Squid服务器配置
ubuntu intel 集成显卡安装
ubuntu 9.04 X3100 显卡开启3D特效
Ubuntu 8.10 Server Ruby 的安装方法
Ubuntu root帐户密码修改
ubuntu下apt-get 命令参数
Ubuntu Linux下实现QQ的三种方式
Ubuntu 8.04中建立PHP+MySQL环境
Ubuntu常用软件大全
Ubuntu系统下安装Aircrack-ng
Ubuntu实现FTP功能
ubuntu 字体美化实现方法
ubuntu下netbeans汉字显示残缺问题

Unix/Linux 中的 Bash中的特殊字符


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 61 ::
收藏到网摘: n/a


  1.通配符
   *   匹配任何长度的任何串
   ?   匹配单个字符
   [...] 匹配单个括号内的字符,[]中的-,!具有特殊含义,如:
   $ echo [a-z]*
    显示首字母在a-z范围内的文件或目录名
   $ echo [a,b]*
    显示首字母为a或b的文件或目录名
   $ echo [!a]*
    显示首字母不为a的文件或目录名(使用!时,!必须是[后的第一个字符)!还可与-和,一起使用
  
   在Bash 2.0以后的版本中,若用shopt打开了extglob选项(shopt -s extglob),那么还可以扩展的模式表达式(模式表达式是指那些包含了一个或多个shell通配符的字):
   *(pattern [|pattern] ...)   匹配模式的零次或多次出现
   +(pattern [|pattern] ...)   匹配模式的一次或多次出现
   @(pattern [|pattern] ...)   匹配模式的一次出现
   ?(pattern [|pattern] ...)   匹配任何一个模式.与*不同的是它不匹配
                  多个模式或模式的重复出现
   !(pattern [|pattern] ...)   与?类似,不过是不包括指定模式的串
   应该注意到,模式表达式的定义是递归的,每个表达式都可以包含一个或多个模式,而且模式表达式也是可以嵌套的.
  
  2.数据或程序控制使用的特殊字符:
   主要有:
   > (file)   输出重定向到文件
   >> (file)   输出重定向到文件,内容加到已存在的文件尾部
   < (file)   输入重定向到文件
   ;       命令分隔符
   |       管道符,把一条命令的输出重定向为另一命令的输入

   &       放在命令之后强迫命令在后台执行
   ``      命令替换,重定向一条命令的输出为另一命令的参数
  
  3.用于引用和逃逸的特殊字符:
   逃逸符\    表示以后的字符不具有特殊的含义或不是Shell的函数,
          除此之外,Bash还可以识别一些C语言中的转义序列,如:
          \a   响伶
          \b   回退
          \e   Escape
          \n   换行
          \r   回车
          \t   制表
          \v   制表
          \\   反斜线
          \nnn  八进制的ASCII编码
          \xnnn  十六进制的ASCII编码
          但必须以如下方式进行引用:
          $'string'
   引用符'和"  将特殊字符或由空白分隔的字引用起来组成一个简单字符串
          两者区别在与,双引号内的内容可以进行参数和变量替换