你什么时候使用大括号扩展?

时间:2010-09-25 09:04:35

标签: bash brace-expansion

我明白brace expansion是什么 但我不知道我在哪里使用它。

你什么时候使用它?
请给我一些方便的例子。

感谢。

4 个答案:

答案 0 :(得分:4)

seq循环中使用大括号扩展的范围表达形式代替for

for i in {1..100}
do
    something    # 100 times
done

答案 1 :(得分:2)

例如,备份目录中的所有文件:

for i in * ; do
    cp "$i"{,.bak}
done

答案 2 :(得分:2)

在bash中,如果要创建范围,则使用大括号扩展,例如

for r in {0..100}

for r in {0..10..2} #with step of 2

for z in {a..z}

而不是使用seq 0 100等外部命令。 此外,大括号扩展可用于列出文件类型,例如

for file in *.{txt,jpg}

列出所有具有txt和jpg扩展名的文件。

答案 3 :(得分:0)

只要您想要与多个选项匹配,就可以使用它。如,

ls src/{Debug,Release}/*.o  # List all .o files in the Debug and Release directories.