问题标签 [brace-expansion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
435 浏览

bash - BASH - _(){ _|_&}; 是什么?_ 做?

我猜 {} 扩展会导致类似

但如果 BASH 大师插话并解释这些字符链接动作,我将不胜感激。

0 投票
2 回答
719 浏览

regex - bash [[ 复合命令(测试语句)中的大括号扩展等价

我希望foo()符合扩展的正则表达式大括号扩展

解决方案基于egrep

但我也想要一个 100% 的bash解决方案。我的尝试:

基本模式没问题:

但是用于检测交替/扩展模式的适当格式是什么?

此外bash,联机帮助页说:

[[表达式]]
对[[和]]之间的词不进行分词和路径名扩展;执行波浪号扩展、参数和变量扩展、算术扩展、命令替换、进程替换和引号删除。

  1. [[ ]]在语句中使用扩展的正则表达式/模式有技巧吗?
  2. 你将如何实现这样的功能?
0 投票
2 回答
219 浏览

bash - 使用shell参数扩展构造文件路径

我需要根据 bash 中两个变量的值构造一个绝对文件路径。我有以下两个变量:

如果设置了变量 MY_FILE_NAME,则 MY_PATH 应具有以下值:

如果未设置变量 MY_FILE_NAME,则 MY_PATH 应与 WORKING_DIR 的值相同。我如何最好在一行中使用参数扩展来实现这一点。

0 投票
1 回答
6689 浏览

shell - 鱼壳范围内的支撑扩展

在 bash 中,我可以执行以下操作

有没有办法在鱼身上达到同样的效果?

0 投票
1 回答
217 浏览

bash - “大括号扩展”如何在 Bash 中工作?

http://www.tldp.org/LDP/abs/html/special-chars.html中有一个例子

这是如何运作的?
我改变这个命令如下:

为什么第一个命令不像示例中的命令那样工作?
帮助!

我知道我已经引入了一个额外的空间。如果将额外的空间更改为其他内容(冒号、破折号等),那么一切都很好。
没有关于以下命令的详细信息: echo {"A","B",'C'}\ {"D","E",'F'}\ {"G","H",'I'} in http://www.tldp.org/LDP/abs/html/special-chars.html。我想知道更多。

0 投票
1 回答
271 浏览

bash - Bash 中的多参数花括号展开

如何使用大括号扩展来制作相当于cal 8 2014 的内容;2014 年 9 月cal {8,9} 2014扩展为cal 8 9 2014(显示 9 月 9 日。)cal {08 2014,09 2014}不是有效的大括号扩展,我不能使用cal {"08 2014", “09 2014”}因为它扩展为cal “08 2014” “09 2014”这两个参数在这里显然没有意义:/我开始质疑大括号扩展的效用......

0 投票
1 回答
380 浏览

linux - setfacl 不适用于大括号扩展

他们 Symfony 文档让您发出两个命令来设置缓存文件夹的权限:

setfacl -R -m u:www-data:rwx app/cache setfacl -dR -m u:www-data:rwx app/cache

更有效的方法是:

setfacl -R -m u:www-data:rwx -m d:u:www-data:rwx app/cache

这适用于我在 Ubuntu 12.04 上。然而,尝试使用大括号扩展似乎并没有:

setfacl -R {"-m ","-m d:"}u:www-data:rwx app/cache

输出:

setfacl: Option -m: Invalid argument near character 1

如果我用大括号回显命令,然后运行输出,它可以工作:

echo setfacl -R {"-m d:","-m "}g:deploy:rwx . | source /dev/stdin

是什么赋予了?为什么扩展不能自己运行?

0 投票
1 回答
430 浏览

bash - 大括号扩展命令无法识别

如何使用大括号扩展(或其他简单方法)重复 shell 命令,为命令的每次迭代调整某些参数?这是我想做的一个简单示例(但命令更冗长): cp ab; cp交流;

显然,如果我将它输入到终端中,那将有效。但我希望能够以更紧凑的方式生成它。我尝试使用 bash 大括号扩展,但它给了我一个找不到命令的错误:

使用反引号也不起作用。

0 投票
2 回答
5534 浏览

bash - 生成带有回声的元素组合

我需要准备一个简单的脚本来生成存储在变量中的一组元素的所有排列,这些元素以 n 个元素为一组(可参数化),想到的最简单的解决方案是根据所选长度使用多个循环群组。但我认为利用 echo 命令生成组合的能力会更优雅,即

所以使用这种方法,我试图实现一种通用的方法,使用元素列表(例如 {1,2})和元素数量作为输入参数。它会是这样的:

所以在这种特殊情况下,在循环结束时,重复变量的值是 {1,2,3,4}{1,2,3,4}{1,2,3,4}。但我无法找到使用此变量使用 echo 命令生成组合的方法。我试过了,有几件事:

我坚持下去,我会很感激任何提示或帮助。

0 投票
2 回答
206 浏览

bash - 以特殊字符为元素的回声组合

我有一个小脚本,它利用回声能力来生成元素的组合。就是这么一段代码

效果很好,当我希望集合包含一些特殊字符(如逗号、括号等)时,问题就来了。我尝试过使用 scapes 但它似乎不起作用,比如

关于如何实现它的任何线索?