问题标签 [wildcard-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 投票
2 回答
2065 浏览

bash - 如何在bash中的变量中逃避通配符扩展?

如何在变量名中转义通配符扩展?

回显该命令总是会导致通配符扩展。

0 投票
3 回答
2197 浏览

bash - 延迟 bash 中的通配符扩展,同时引用特殊字符

我写了一个 bash 脚本,稍后需要做一些事情。它被称为这样的东西:

但是,当这样*.log调用时,在调用时会扩展,并且调用脚本就像我写的一样

我试图让我的脚本稍后扩展通配符。我试着这样称呼它

还有\*, 但这些都导致通配符根本没有得到扩展。

如何在命令行中扩展通配符?有没有办法在调用脚本时防止扩展,即在输入时获取原始参数?

这是我的脚本的一部分,用于为以后的调用做准备:

请注意,我必须引用命令行,因为我的一些文件和文件夹的名称中有空格;如果我删除引用位,即使没有通配符的位也会停止工作。

0 投票
0 回答
145 浏览

c# - 是否有与 msbuild 中的 FileMatcher 类等效的开源

我正在构建一个命令行工具,它需要基于一个或多个包含单个 (*) 通配符以及任何深度文件夹 (**) 通配符的相对路径来解析一组文件和文件夹。

理想情况下,我想要一个类似于 MsBuild 中的类,因此使用模式如下:

是否有任何开源实用程序库可以在.Net 中实现此功能?

0 投票
1 回答
461 浏览

for-loop - 防止 Windows 命令解释器 (FOR) 将列表视为通配符?

我正在尝试编写一个带有几个参数的批处理文件,后跟一个或多个可选文件名(可能包括通配符),并在某些时候处理每个可选文件名,但该for命令一直试图扩展它们,所以即使只是打印它们也行不通。

我检查了帮助 ( for /?),但似乎没有任何开关可以防止这种情况发生。我尝试使用单引号、双引号和反引号以及/f,但似乎没有任何效果。

以下命令按预期工作:

以下命令不会:

以下,甚至更少:

有没有办法让 Windows 命令解释器将传递的列表视为字符串,而不是尝试将其解释为文件名通配符?

0 投票
1 回答
1377 浏览

bash - 用于查找最新日志文件的 bash 脚本

我想使用 bash 脚本在目录中查找最新的日志文件(.log 扩展名)。

起初我的简单尝试还可以

但是当我承认可以找到日志文件以外的文件时,由于通配符扩展,这不起作用

所以我相信我必须将 ls 命令读入数组或文件,然后从那里处理。

0 投票
2 回答
1941 浏览

java - 停止将命令行参数中的通配符扩展至 Java

我的程序必须监视与掩码匹配的文件。文件夹名称和掩码通过命令行参数传递。但是面具在我可以使用之前被第一个匹配替换了!

双引号无效,其他符号也无效。我尝试使用\'保护输入。但是,这个符号将被添加到我不想要的 args 中。知道如何解决吗?

正则表达式 fromargs[2]也替换为文件夹中的某些文件。

我知道使用引号或反斜杠并不是一个坏主意,但我认为存在更好的方法。

0 投票
2 回答
1296 浏览

directory - /** 和 /* 在 Grunt 中的目录导航方面有何不同?

这对你们来说很容易,但我找不到这个问题的明确/正式答案。

假设我们在目录 A 中。那么,

“A/*”可能意味着:A 中的每个文件和文件夹。

“A/**”则可能意味着:A 中的每个文件和文件夹,以及直接位于 A 中的每个子项中的每个文件和文件夹。(基本上,/* 运算符的扩展,它遍历根文件夹的更深一层? 又名 "/** " = "/* /* " )

我的“直接内部”术语可能是错误的。说“直接孩子”或其他东西可能会更好,但你明白了。

那么,“A/**/*”是什么意思呢?它是否等于 "A/* /* /* " ?

虽然这看起来很基本,但当我没有对运算符的正式定义时,它会很混乱。

我目前正在使用 Javascript 并尝试修改 Gruntfile。但我想这些运算符可能会在任何情况下出现。

0 投票
4 回答
79219 浏览

bash - 双星号 (**) 通配符是什么意思?

我尝试了以下命令,但无法解释结果:

我不确定它到底在输出什么以及为什么。

0 投票
1 回答
283 浏览

shell - 如何防止在 powershell shell 中使用通配符挂起。(强制)

也许这特别是一个 perforce 问题,但我认为不是。至少,在某种程度上,它涉及 cmd.exe 和 powershell 之间的区别,涉及它如何将参数传递给命令行程序。

在 cmd.exe 提示符下发出的这个 perforce 命令有问题:

p4 文件 //this/that/*

因为需要很长时间才能响应。但是,如果我引用这样的路径:

p4 文件“//这个/那个/*”

反应是立竿见影的。但是,在 powershell 提示符下,引用路径并没有帮助。我找不到在 PS 提示符下得到快速响应的方法。所以 cmd.exe 和 powershell 调用应用程序的方式有一些区别。

不要被带有正斜杠的路径的形式分心。这是 p4 存储库中的路径,并不意味着被解释为文件系统路径。

0 投票
1 回答
552 浏览

php - 如何在 laravel 5 的管理路由中使用通配符

我正在使用下面的代码在 laravel 中进行管理路由。

这对我来说很好。但是当我在代码中添加新函数时,我必须在路由文件中编写路由。例如:如果我想在用户控制器中添加编辑功能,我必须添加新的路由,例如 .

Route::get('/users/edit', 'Admin\UserController@edit');

所以我必须为每个功能添加路由。

我想知道如何使用通配符进行管理路由,这样我就必须只为控制器编写路由,而不是为每个功能编写路由。

通配符替换函数名,并自动重定向到该函数。