总结shell中的一些特殊符号

符号

一般用途

特殊用途或说明

#

注释

1)         在echo中当#

2)         参数替换,见第二章

3)         数制转换,echo $((2#1001))

;

命令分隔符

 

;;

终止case选项

 

.

同source命令

1)         用在文件名前,表示隐藏文件

2)         当目录为当前目录

3)          

“”

部分引用

 

‘’

全引用

 

,

同C语言

 

\

转义字符

 

/

路径分隔符/除法

 

``

命令替换符

 

:

空命令

1)         与true同义

2)         在if/then中点位符,同C语言;

3)         :>file,清空file文件

4)         路径分隔符 echo $PATH

!

取反

1)         历史机制

*

通配符(任意多个)/乘法

 

**

 

?

单字符通配/三元条件判断

 

$

取变量值

1)         行结束

${}

参数替换

 

$*=$@

所有命令行

 

$?

退出状态码

 

()

命令组

1)         初始化数组

{xxx,yyy,zzz,…}

大括号扩展

1)         cat {a,b} > c 把a,b一起重定向到c

2)         cp a.{txt,bu} copy a.txt to a.bu

{}

命令组/函数

 

[]

条件测试

1)         数组元素

2)         字符范围

[[]]

测试

 

(())

扩展并计算整数表达式

 

<> 

文件重定向

n<>file, 打开文件file来读写,关分配fd为i给这个文件,如果file不存在,创建它。 exec  n>&-,表示关于fd为n的文件

|

管道

它将一个里程的stdout放到另一个进程的stdin中

||

一般用在[[]]中

&

后台运行

 

&&

一般用在[[]]中

-

选项/前缀

1)    重定向stdin或stdout,参考:http://blog.csdn.net/good_habits/article/details/27370267

~+

当前工作目录

相当于$PWD

~-

先前工作目录

相当于$OLDPWD

你可能感兴趣的:(linux)