[word]}Indicate Error if Null or Unset. Ifparameteris unset or null, the expansion ofword(or a message indicating it is unset ifwordis omitted) shall be written to standard error and the shell exits with a non-zero exit status. Otherwise, the value ofparametershall be substituted. An int...
在Linux系统中,命令行的强大功能离不开各种参数扩展(Parameter Expansion)的支持。通过对参数进行不同方式的扩展,用户可以在命令行中实现复杂的字符串处理任务。本文将深入讲解Linux中的几种常见参数扩展方法及其应用场景,并通过实例帮助读者理解这些概念。 一、参数扩展的基本概念 在Shell脚本中,参数扩展是指通过特殊的语...
[word]}Indicate Error if Null or Unset. Ifparameteris unset or null, the expansion ofword(or a message indicating it is unset ifwordis omitted) shall be written to standard error and the shell exits with a non-zero exit status. Otherwise, the value ofparametershall be substituted. An int...
34.1 参数扩展(Parameter Expansion) 虽然参数扩展在第7章就已出现,但是因为大部分参数扩展使用在脚本文件,而非命令行中,所以我们未加详细解释,在这之前已经使用了某些形式的参数扩展,例如shell变量。Shell提供了多种参数的扩展形式。 34.1.1 基本参数 参数扩展的最简单形式体现在平常对变量的使用中。举例来说,$a扩...
本章将学习几个用于操纵字符串和数字的shell脚本特性。Shell提供了多种字符串操作的参数扩展。除了算术扩展(在第7章讲到),还有一个常见的名为bc的命令行程序,它能执行更高层次的数学运算。 34.1 参数扩展(Parameter Expansion) 虽然参数扩展在第7章就已出现,但是因为大部分参数扩展使用在脚本文件,而非命令行中,所以...
本章我们只是简要地介绍参数扩展(parameter expansion),参数扩展用在 shell 脚本中比直接用在命令行中更为有用。它的许多特性与系统存储小块数据以及给每个小块数据命名的性能有关。很多这样的小块数据(称为变量[variable]会更合适)可用于扩展。例如,命名为USER的变量包含你的用户名,为了触发参数扩展,并显示出USER的...
参数扩展的基本格式是${ parameter },扩展的结果是${ parameter }被替换为相应的值。 二、参数扩展 1、实例一 echo$1$11 echo$1${11} 首先解释下${1..9}是什么意思。在我们写Shell时必不可免的需要传递参数以实现自定义变量。当超过阿拉伯数字9以后。就需要使用${ parameter }明确告诉Shell第11个参数是$...
参数扩展的基本格式是${ parameter },扩展的结果是${ parameter }被替换为相应的值。 1、实例一 复制 echo$1 $11 echo$1 ${11} 1. 2. 首先解释下${1..9}是什么意思。在我们写Shell时必不可免的需要传递参数以实现自定义变量。当超过阿拉伯数字9以后。就需要使用${ parameter }明确告诉Shell第11个参数...
译注:Linux 系统的外壳展开(shell expansion)(也被译做 外壳扩展)也是命令行使用者必须了解的课题。这里,简单将其展开顺序列示如下,以备参考: 大括号展开(Brace Expansion){...} 波浪号展开(Tilde Expansion)~ 参数展开(Shell Parameter Expansion)${...} ...
从用户的shell看,wc -l的结果是行数+空格+文件名,用户的匹配项是'空格*',那么从后面开始的最长匹配就是行数后面的所有内容,也就是说,这个表达式最终的结果是产生命令行参数所带文件的行数。看一下man bash可以找到详细说明,查找Parameter Expansion这段会看到:{parameter%word} {parameter%%word...