bash中符号那点事

在用bash的时候,发现对很多符号理解不到位,看了网上一个帖子写的不错,把重点摘过来。

1.星号

星号是个神奇的符号,在bash中,它是通配符之一。
简单列举下星号的功能,被称为万能字符不是没有理由的.
1)文件名匹配: 默认情况下匹配所有非隐藏文件(即非.开头到文件)
2)字符串匹配: 匹配任意字符
3)$*匹配所有参数
4)${array[*]},表示了所有数组元素
5)乘法运算
6)** 冪运算
7)** bash4中提供的更牛b的文件名匹配,包含递归功能

 

2.引号

在bash脚本中,有三种引号

1. 单引号 '

     两个单引号包围起来的字符串就是普通的字符串,它将保留原始的字面意思.
2. 双引号 "

     两个双引号包围起来的字符串,部分特殊字符将起到它们的作用.
     这些特殊字符有: 美元符$, 反斜杠\, 反引号,  感叹号!.
3. 反引号 `

     两个反引号包围起来的字符串,将作为命令来运行,
     执行的输出结果作为该反引号的内容,称为命令替换,
     它有另一种更好的写法: $(command)

3.空格

空格,一个看不见的字符,很不起眼,也正由于不起眼,很多人经常忽略它,导致代码出错,却还找不着北。

bash中用空格的规则:

    1. 等号赋值两边不能有空格
    2. 命令与选项之间需要空格
    3. 管道两边空格可有可无

参考链接:

http://www.igigo.net/archives/category/bash%E9%82%A3%E7%82%B9%E4%BA%8B

原文地址:https://www.cnblogs.com/bo083/p/2834898.html