命令行解析与扩展及变量相关知识详解
1. 命令行解析与扩展
在命令行操作中,有多种解析和扩展机制,这些机制能极大地提高操作效率和灵活性。
1.1 引号内参数换行
引号内的参数可以包含换行符。例如:
$ sa "Argument containing ⏎ > a newline" :Argument containing a newline:这里的⏎代表回车键,并非要在终端输入的内容。当 shell 判断命令未完成时,会显示>提示你继续完成命令。
1.2 花括号扩展
花括号扩展是首先执行的扩展,它是非标准的(即未包含在 POSIX 规范中)。它作用于未加引号的花括号,花括号内可以是逗号分隔的列表或序列,每个元素会成为一个单独的参数。
- 逗号分隔列表示例:
$ sa {one,two,three} :one: :two: :three:- 序列示例(在 bash3.0 中添加):
$ sa {1..3} :1: :2: :3: $ sa {a..c} :a: :b: :c:花括号表达式前后的字符串会包含在每个扩展后的参数中: