brace-expansion相关内容

使用 Bash 变量支持扩展 - {0..$foo}

WEEKS_TO_SAVE=4mkdir -p 每周.{0..$WEEKS_TO_SAVE} 给我一​​个名为每周的文件夹.{0..4} 在创建我丢失的文件夹时是否有大括号扩展的秘密? 解决方案 bash 在 变量扩展 之前做 brace 扩展,所以你得到 每周.{0..4}. 由于结果是可预测且安全的(不要相信用户输入),因此您可以在您的情况下使用 eval: $ WEEKS ..
发布时间:2021-12-05 22:30:00 其他开发

如何在 Bash 中将 `4-7` 替换为 `4,5,6,7`

目标 我有一个长字符串 s ,它代表由逗号和破折号分隔的一系列数字(见下文).当几个数字相互跟随时,两个极端数字被写入并用破折号分隔.例如,系列4,5,6,7 写为4-7.我的目标是扩展这个字符串,让所有数字都用逗号分隔(4-7 应该变成 4,5,6,7). 我做了什么 这是一个字符串的例子 s="4092-4093,4095-4097,4104,4107,4111,4125- ..
发布时间:2021-07-02 19:42:04 其他开发

重击括号扩展:如何用数字匹配所有文件名?

我要匹配目录中的所有文件名,如下所示: h1.txt,h2.txt,h12.txt,h3.txt 如果我愿意 echo h [[:digit:]].txt 我知道 h1.txt,h2.txt,h3.txt 因此它匹配我想要的所有文件,但 h12.txt 除外,因为它有两位数字而不是一位数字.一个或多个数字是否可以扩展? 解决方案 想通了! echo h +([[ ..
发布时间:2021-04-14 20:44:13 其他开发

基于可变内容的bash大括号扩展无法正常工作

我怎样才能使bash扩展到传递给mkdir的变量中找到的所有内容?到目前为止,我已经尝试使用 eval 和 bash -c ,但是似乎没有任何作用 LEVEL_1 = 1,2,3LEVEL_2 = a,b,cDATA_L1 ="/tmp/{$ LEVEL_1}"DATA_L2 ="$ DATA_L1/{$ LEVEL_2}"用于$(cat file.txt)中的LINE;做#"cat"在这里返 ..
发布时间:2021-04-14 19:42:54 其他开发

为什么bash brace扩展在某些算术表达式中起作用而在其他算术表达式中却不起作用?

我正在处理一个非常简单的bash脚本,我低估了为什么不赞成使用的$ []可以正常工作,而$(())似乎破坏了整个问题. 我所指的代码是: for {1..10}中的i;做printf%4d $ [{{1..10} * i]回声完毕 在此版本中,我没有任何问题,但是我不想使用不推荐使用的bash元素,这就是为什么我想切换到$(())的原因. 不幸的是,一旦我将代码更改为: p ..
发布时间:2021-04-14 19:36:40 其他开发

如何触发脚本中的括号扩展?

我正在编写一个脚本,该脚本需要使用shell的大括号扩展名,但是我没有尝试过.对于(人为)实例,说我有一个包含字符串 的变量 thing{01..02} 我(显然)想将其扩展为 thing01 thing02 在脚本内部,我该怎么做? (对于任何认为这是其他问题的重复的人,请更仔细地阅读它们.这个问题是关于从shell而不是shell脚本工作的,并且不需要扩展任意表达式 ..
发布时间:2020-09-19 02:04:12 其他开发

如何在变量上进行括号扩展?

考虑以下脚本: #! /bin/bash -e echo {foo,bar} EX={foo,bar} echo ${EX} 此脚本的输出为: foo bar {foo,bar} 我希望echo命令在${EX}上执行大括号扩展.因此,我希望看到 的输出 foo bar foo bar 我想创建一个脚本,用户可以在其中提供带有大括号的路径,并在其中复制每个扩展版本. ..
发布时间:2020-09-18 22:25:24 其他开发

如何在Bash变量中存储大括号

我正在尝试编写bash脚本.我不确定为什么在我的脚本中: ls {*.xml,*.txt} 可以,但是 name="{*.xml,*.txt}" ls $name 不起作用.我知道了 ls: cannot access {*.xml,*.txt}: No such file or directory 解决方案 表达式 ls {*.xml,*.txt} ..
发布时间:2020-09-18 22:25:18 其他开发

用Bash变量进行括号扩展-{0 .. $ foo}

WEEKS_TO_SAVE=4 mkdir -p weekly.{0..$WEEKS_TO_SAVE} 给我一​​个名为Weekly的文件夹.{0..4} 创建丢失的文件夹时,花括号扩展是否有秘密? 解决方案 bash在variable expansion之前执行brace expansion,因此得到weekly.{0..4}. 由于结果是可预测且安全的(不信任用户输入),因 ..
发布时间:2020-09-18 20:39:56 其他开发

理解代码({0..1} {0..1} {0..1} {0..1} {0..1} {0..1} {0..1} {0..1 })

我在 Bash shell十进制到二进制转换中看到了以下代码我想知道它是如何工作的?我尝试谷歌搜索无济于事. D2B=({0..1}{0..1}{0..1}{0..1}{0..1}{0..1}{0..1}{0..1}) echo ${D2B[7]} 上面的代码有什么作用? 解决方案 {N..M},对于整数文字N和M,生成从N到M的整数序列,包括整数(包括空格).这称为"括号扩展 ..
发布时间:2020-04-23 11:01:59 服务器开发

如何写击花式缩进多行括号扩展?

我处理一个行这样的: 的mkdir -p“$ DEST_ROOT_PATH /”{“$ DEST_DIR1”,“$ DEST_DIR2”,...,“$ DEST_DIRN”} 这行是很长。我希望削减它,它的宽度将放入一个80列线。我试图逃跑用反斜杠线的末端,但空间alignement打破了扩展: $回声“哈”{A,B,\\ > C} 哈{A,B,C} 解决方案 您可以使用这个恶 ..
发布时间:2016-08-03 11:45:38 Linux/Unix

如何处理在GNU shell扩展在Ubuntu下做什么呢?

由于这个非常简单的的Makefile : 所有: @mkdir -pv测试/ {A,B} 我得到这个操作系统输出x 10.6.8和CentOS 5.5: 的mkdir:创建目录`测试“ MKDIR:创建目录`测试/ A' MKDIR:创建目录`测试/ B' 但在Ubuntu 11.04我得到这样的: 的mkdir:创建目录`测试“ MKDIR:创建目录`测试/ {A,B}' ..
发布时间:2016-08-03 10:51:38 Linux/Unix