理论教育 Shell高级应用实践

Shell高级应用实践

时间:2023-11-25 理论教育 版权反馈
【摘要】:代表任何单个字符, 例如, yum.?可以是yum.a yum.b yum.c, 但是要注意小数点后面必须有任意一个字符。图4.4命令替换符示例4. 算术扩展运算符Shell 中使用$算术运算扩展符, 可将$作为参数传递给命令或者替换命令行上的任意数值。expression 的构成规则与C 语言的规则相同, 所有标准C 算术运算符都可以使用, 如表4.1 所示。

Shell高级应用实践

1. 花括号

通过花括号扩展可以生成需要的字串, 花括号中可以包含连续的序列或使用逗号分隔的多个项目, 连续的序列包括一个起点和一个终点。

例如, 使用花括号输出字符串序列。

例如, 使用花括号扩展创建名称相关的目录。

2. 通配符

通配符就是一些特殊的字符, 使用通配符在引用文件名时可以简化文件名的书写, 在bash 中有三种常见的通配符“∗”“?”“[ ]”。

“∗”代表任何字符, 例如, yum. ∗代表的可以是yum., 也可以是yum.a、 yum.ab、yum.abc, 当然小数点后面可以有多个字母

“?”代表任何单个字符, 例如, yum.? 可以是yum.a yum.b yum.c, 但是要注意小数点后面必须有任意一个字符。

“[ ]”代表一个字符范围, 只要文件名中“[ ]”位置处的字符在“[ ]”范围内, 那么这个文件名就与这个模式串匹配。 例如, [abcdef]可以是a b c d e f 中的任意一个字母, 当然也可以是数字。 [-]代表的是一个范围, 例如[a-z]表示的是字母a 到z 之间的所有字母。 [^], ^是反向选择符号就是非的意思, 例如, [^abc]表示只要不是a b c 这三个字符中的任意一个就选择。

3. 命令替换符(www.daowen.com)

$( )可以将命令替换输出赋值变量

例如, 通过命令替换获得当前日期并用它来生成唯一文件名, 如图4.4 所示, 这是提取日期信息来生成日志文件名常用的一种技术。

图4.4 命令替换符示例

4. 算术扩展运算符

Shell 中使用$((expression))算术运算扩展符, 可将$((expression))作为参数传递给命令或者替换命令行上的任意数值。 expression 的构成规则与C 语言的规则相同, 所有标准C 算术运算符都可以使用, 如表4.1 所示。

表4.1 算术表达式含义

算术扩展运算符使用举例如下。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈