Bash 何时使用大括号展开?
我明白是什么。Bash 何时使用大括号展开?,bash,brace-expansion,Bash,Brace Expansion,我明白是什么。 但我不知道我在哪里用它 您什么时候使用它? 请给我举几个方便的例子 谢谢。例如,备份目录中的所有文件: for i in * ; do cp "$i"{,.bak} done 只要你想匹配多项选择,你就可以使用它。例如: ls src/{Debug,Release}/*.o # List all .o files in the Debug and Release directories. 大括号扩展的范围表达式形式用于代替for循环中的seq: for i in {
但我不知道我在哪里用它 您什么时候使用它?
请给我举几个方便的例子
谢谢。例如,备份目录中的所有文件:
for i in * ; do
cp "$i"{,.bak}
done
只要你想匹配多项选择,你就可以使用它。例如:
ls src/{Debug,Release}/*.o # List all .o files in the Debug and Release directories.
大括号扩展的范围表达式形式用于代替
for
循环中的seq
:
for i in {1..100}
do
something # 100 times
done
在bash中,如果要创建范围,可以使用大括号扩展,例如 {0..100}中r的
{0..10..2}中r的
#步骤为2
用于{a..z}中的z
而不是使用外部命令,如seq 0 100
。
此外,大括号扩展还可用于列出文件类型,例如
用于*.txt,jpg}中的文件
此列表列出了所有具有txt和jpg扩展名的文件。对不起,已将{、.bak}移到引用部分之外。是打字错误。好吧,这更有意义。事实上,我直到现在才意识到路径组件不需要存在。