shell之特殊字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell之特殊字符相关的知识,希望对你有一定的参考价值。

    bash是强大的脚本语言,在众多的Linux发生版中也是默认的shell,支持变量和特殊字符,下面就来看看它有哪些特殊字符:

;        命令分隔符,可以在一行中写多个命令

;;       终止case选项

.        shell内建命令,等同于source,

.        作为文件名的一部分,如果是前缀,则表示为隐藏文件

.        字符匹配,在正则表达式中表示单个字符

"        双引号,弱引用,可以实现变量

‘        单引号,强引用,引用字符本身

\        转义字符

`        后置引用,命令替换

:        空命令,就是什么都不干,在脚本中: > a.txt 等同于 cat /dev/null > a.txt

!       取反操作符,shell关键字

*        任意字匹配,在算术运算中**是幂运算

${}      引用变量

$?       退出状态变量

$#       在bash脚本中表示参数的个数

$* [email protected]    在bash脚本中表示参数的列表

$0       脚本名称

()       命令组:如:(a=3;echo $a),注意在()中的变量,其使用范围仅限于()内并且产生子shell运行

{a,b}    大括号扩展,如 cat {a.txt,dns.sls} > c.txt

[]       test的表达式,在正则表达式中表示字符匹配的范围

(())     数据计算的扩展

>        标准输出重定向

2>       错误输出重定向

&>       重定向所有输出

<        输出重定向

||       或,逻辑操作

&&       与,逻辑操作

{}       代码块,这个结构创建了一个匿名的函数,但和函数不同的是,其中声明的变量对脚本的其它部分来说,是可见的。

如:

#!/bin/bash

a=5

{ a=123; }

echo $a    #a=123 说明代码块中对变量a的修改,影响了外边的变量a


-        用于重定向stdin或stdout,如:ls /root | cat - 或 grep ‘c‘ a.txt  | diff c.txt -

^        表示定位到行首






   

本文出自 “一万年太久,只争朝夕” 博客,请务必保留此出处http://zengwj1949.blog.51cto.com/10747365/1916402

以上是关于shell之特殊字符的主要内容,如果未能解决你的问题,请参考以下文章

linux shell命令之wc/split及特殊字符

shell编程之元字符

shell脚本 都有哪些特殊字符不支持

shell脚本中怎样对特殊字符进行处理 一串密码在加密前对密码中的!@#$%等特殊字符进行处理(加上‘’)。

Shell 脚本特殊字符解释

Shell命令行中特殊字符与其转义详解(去除特殊含义)