一、我也来抄shell之ABS--特殊字符

特殊字符如下:

“#”     --注释,行首以#开头为注释(#!是个例外).
“;”     --命令分隔符,可以用来在一行中来写多个命令.
“;;”    --终止"case"选项.
“.”     --“.”命令等价于 source 命令这是一个 bash 的内建命令.“.”如果作为文件名的前缀的话,那么这个文件将成为隐藏文件 “.”字符匹配,这是作为正则表达是的一部分,用来匹配任何的单个字符.
“"”     --部分引用."STRING"阻止了一部分特殊字符.
“'”     --全引用. 'STRING' 阻止了全部特殊字符.
","     --逗号链接了一系列的算术操作,虽然里边所有的内容都被运行了,但只有最后一项被返回,例如:
             1 let "t2 = ((a = 9, 15 / 3))"
             # Set "a = 9" and "t2 = 15 / 3"
"\"     --转义字符,如\X 等价于"X"或'X'.
"/"     --文件名路径分隔符.或用来做除法操作.
"`"     --后置引用,命令替换.
":"     --空命令,等价于"NOP"(no op,一个什么也不干的命令).也可以被认为与 shell 的内建命令(true)作用相同.":"命令是一个 bash 的内建命令,它的返回值为 0,就是 shell 返回的 true.例如:
         在 if/then 中的占位符,如:
         1 if condition
         2 then : # 什么都不做,引出分支.
         3 else
         4 take-some-action
         5 fi
    "变量扩展/子串替换"
    在和 > (重定向操作符)结合使用时,把一个文件截断到 0 长度,没有修改它的权限.
    如果文件在之前并不存在,那么就创建它.如:
         1 : > data.xxx
         2 #文件"data.xxx"现在被清空了.
         3 #与 cat /dev/null >data.xxx 的作用相同
         4 #然而,这不会产生一个新的进程,因为":"是一个内建命令.
“!“     --取反操作符,将反转"退出状态"结果.也会反转 test 操作符的意义.比如修改=为!=.!操作是 Bash 的一个关键字.在另一种上下文中,!还能反转 bash 的"history mechanism".
"*"     --万能匹配字符,用于文件名匹配(这个东西有个专有名词叫 file globbing),或者是正则表达式中.注意:在正则表达式匹配中的作用和在文件名匹配中的作用是不同的.同时还表示乘法运算,幂为“**”
“?”     --测试操作.在一个确定的表达式中,用?来测试结果.(())结构可以用来做数学计算或者是写 c 代码,那?就是 c 语言的 3 元操作符的一个.
“?”     --在 file globbing 中和在正则表达式中一样匹配任意的单个字符.
"$"     --变量替换
"$"     --在正则表达式中作为行结束符
"${}"   --参数替换
"$*,$@" --位置参数
"$?"    --退出状态变量.$?保存一个命令/一个函数或者脚本本身的退出状态.
"$$"    --进程 ID 变量.这个$$变量保存运行脚本进程 ID
"()"      --命令组
"{}"      --代码块.又被称为内部组.事实上,这个结构创建了一个匿名的函数.但是与函数不同的是,在其中声明的变量,对于脚本其他部分的代码来说还是可见的.
“{} \;”   --路径名.一般都在 find 命令中使用.这不是一个 shell 内建命令.注意: ";"用来结束 find 命令序列的-exec 选项.
“[]“      --test 的表达式将在[]中.值得注意的是[是 shell 内建 test 命令的一部分,并不是/usr/bin/test 中的扩展命令的一个连接.
“[[]]”    --test 表达式放在[[]]中具体查看[[]]结构的讨论.
“[]“      --数组元素,在正则表达式中使用,作为字符匹配的一个范围.
"(())"   -- 数学计算的扩展.
">&>>&>><"   --重定向.
"<,>"    --ASCII 比较
"\<,\>"  --正则表达式中的单词边界.如:bash$grep '\<the\>' textfile
"|"         --管道.分析前边命令的输出,并将输出作为后边命令的输入.这是一种产生命令链的好方法
">|"       --强制重定向(即使设置了 noclobber 选项--就是-C 选项).这将强制的覆盖一个现存文件.
"||"        --或-逻辑操作.
"&"       --后台运行命令.一个命令后边跟一个&,将表示在后台运行.
"&&"    --与-逻辑操作.
"-"        --选项,前缀.在所有的命令内如果想使用选项参数的话,前边都要加上"-".
"-"        --用于重定向 stdin 或 stdout.例如:
             cd source/directory;tar cf - . | (cd ../dest/directory; tar xpvf -)与下面相同
             cp -a /source/directory/* /source/directory/.[^.]* /dest/directory
“-"        -- 之前工作的目录."cd -"将回到之前的工作目录,具体请参考"$OLDPWD"环境变量.
"="       --算术等号,有时也用来比较字符串.
"+"       --算术加号,也用在正则表达式中,选项,对于特定的命令来说使用"+"来打开特定的选项.
"%"      --算术取模运算.也用在正则表达式中.
"~+"     --当前工作目录,相当于$PWD 变量.
"~-"      -- 之前的工作目录,相当于$OLDPWD 内部变量
"^"       -- 行首,正则表达式中表示行首."^"定位到行首.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值