shell脚本中linux命令特殊字符,SHELL中的特殊字符之一( # ; ;; . ” ‘ , \ / ` : * ? $ )...

#号:

注释,行首以#开头为注释(#!是个例外)

命令是不能跟在同一行上注释的后边的,没有办法,在同一行上,注释的后边想

要再使用命令,只能另起一行.

当然,在echo 命令中被转义的#是不能作为注释的.

同样的,#也可以出现在特定的参数替换结构中或者是数字常量表达式中.

echo “The # here does not begin a comment.”            #不是注释

echo ‘The # here does not begin a comment.’             #不是注释

echo The \# here does not begin a comment.           #不是注释  \转义字符

echo The                                                                                    # 这里开始一个注释

echo ${PATH#*:}                                                                  # 参数替换,不是一个注释

echo $(( 2#101011 ))                                                           # 数制转换,不是一个注释

; 号:命令分隔符,可以用来在一行中来写多个命令。

;;   号:终止”case”选项.

如:

[cce]

case "$variable" in

abc) echo "\$variable = abc" ;;

xyz) echo "\$variable = xyz" ;;

esac

[/cce]

.号:

命令等价于source 命令

作为文件名的一部分.如果作为文件名的前缀的话,那么这个文件将成为隐藏文件.将不被 ls 命令列出.

作为目录名的一部分的话,那么.表达的是当前目录.”..”表示上一级目录.经常作为一个文件移动命令的目的地

字符匹配,这是作为正则表达是的一部分,用来匹配任何的单个字符

”号:部分引用.”STRING”阻止了一部分特殊字符,在一个双引号中直接使用变量名,

一般都是没有问题的.它阻止了所有在引号中的特殊字符的

重新解释�包括变量名[2]�但是$,`和\除外.[3]保留$,作为特殊字符的意义,是为了能够在双

引号中也能够正常地引用变量(“$var”)。

使用”"来防止单词分割.[4]如果在参数列表中使用双引号,将使得双引号中的参数作为一个参

数.即使双引号中的字符串包含多个单词(也就是包含空白部分),也不会变为多个参数

用双引号把参数封到 echo 中是很有必要的,只有在单词分隔或时保留空白时的时候可能

有些问题.

’ 号:单引号操作总体上和”"很像,但不允许引用变量.因为$的特殊含义被关闭了.在”中除了’,其他

字符都没有特殊的含义了.所以单引号比双引号严格.

因为即使是\,在”中都被关闭了,所以你想在”中显示’的含义,将得不到预期的效果.

.号:

逗号链接了一系列的算术操作,虽然里边所有的内容都被运行了,但只有最后一项被

返回.

如:

let “t2 = ((a = 9, 15 / 3))” # Set “a = 9″ and “t2 = 15 / 3″

\ 号:转义字符,如\X 等价于”X”或’X',

/ 号:除法运算或是文件名路径分隔符。

` 号:后置应用,命令替换。

:  号:空命令,等价于 “NOP”也可以被认为与shell 的内建命令(true)作用相同.”:”命令是一

个 bash 的内建命令,它的返回值为0,就是shell 返回的true.

在 if/then 中的占位符,什么都不做。

在一个 2 元命令中提供一个占位符;使用”参数替换”来评估字符串变量

在和 > (重定向操作符)结合使用时,把一个文件截断到0 长度,没有修改它的权限.

如果文件在之前并不存在,那么就创建它

还用来在/etc/passwd 和$PATH 变量中用来做分隔符.bash$ echo $PATH

/usr/local/bin:/bin:/usr/X11R6/bin:/sbin:/usr/sbin:/usr/games

!  号:取反操作符,将反转”退出状态”结果,

* 号:万能匹配符,用于文件名或是正则表达式中;数学式中的乘法运算符。

**幂运算

?  号:测试操作,用了测试结果,测试变量是否被set。

正则表达式中用了匹配任意单个字符。

$ 号:变量替换。正则表达式中德行结束符。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值