hylan:shell中的特殊符号、特殊变量

写此文的原因:shell脚本中的符号太多了,随着学习的深入、知识点的扩增,感觉记忆力不够用。

于是记录下来,方便以后查阅。

  1. /    虚拟目录的根目录。
  2. $    引用某个变量、环境变量的值。
  3. ${}    精确的界定变量名称的范围。
  4. $()    命令替换 另一种形式(用两个反引号` 键盘上和波浪号同键位) 例如:testing=$(date)    等效于     testing=`date`  。
  5. $[]    将一个数学运算结果赋给某个变量时,可以此符号把数学表达式围起来。即:$[ operation ]。
  6. $?    专门的变量    用来保存上个已执行命令的退出状态码。
  7. $0  $1$9(默认到第九个)  10以后${10} ...    位置参数变量    这些特殊变量分配给命令行中的所有参数。
  8. $#    参数总数。
  9. ${ !# }    当 $#=0时,用来表示脚本名$0;当 $#>0时,用来表示最后一个命令行参数变量。
  10. $*    将命令行上提供的所有参数当作一个单词保存。
  11. $@    将命令行上提供的所有参数当作同一个字符串中的多个独立的单词。
  12. $$    特殊的环境变量  当前PID。
  13. >(新建、覆盖文件)    >>(新建、追加文件)    输出重定向    command > outputfile
  14. <    输入重定向    <<    内联输入重定向
  15. \    一种是转义符号    例如: if [ $val1 \> $val2 ] 转义了大于号> 与输出重定向区别    另一种是放在指令的最末端,表示指令连接下一行。
  16. []    一种条件检测方法,等效于 test命令  例如:[ condition ]。 里面只能包含test命令使用的标准数学运算符。大于号等需要转义。
  17. (())    双括号命令    格式:(( expression ))    expression可以是任意的数学赋值或比较表达式。备注:不需要将双括号中表达式里的大于号转义。
  18. [[  ]]    双方括号命令    [[ expression ]]  expression使用了test命令中采用的标准字符串比较 但它提供了test命令未提供的另一个特性——模式匹配。例如:[[ $USER == r* ]]  双等号将右边的字符串(r*)视为一个模式,并应用模式匹配规则。
  19.     波浪号    表明shell会话位于你的主目录中。
  20. .    单点符    表示当前目录。
  21. ..    双点符    表示当前目录的父目录。
  22. 标准通配符: ?    问号    代表一个字符;*    星号    代表零个或多个字符。
  23. ' '   " "    单引号  双引号   来界定字符串的首尾(字符串中有空格的时候必用)。
  24. #    井号    用作注释  备注:shell脚本文件的第一行是个例外,#号后面的惊叹号(!)会告诉shell用哪个shell来运行脚本    例如:   #!/bin/bash
  25. |    断条符号(键盘上和\同键位)    管道符号
  26. &-    关闭文件描述符的特殊符号。例如: exec 3>&- 关闭文件描述符3  。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值