命令行参数 **/* 会遍历当前所有文件,这是系统行为?
 发布于 5 年前  作者 mengdu  3814 次预览  最后一次回复是 5 年前  来自 问答 

做命令行工具,无意中发现,这个参数会匹配文件,怎么回事? 没找到相关的说明。

// demo.js
console.log(process.argv)
node demo.js **/*

image.png

2 回复
Shonke

这是shell 的行为 不过你应该是用的zsh,需要找zsh的相关文档,你可以自己找一下试试

bash的类似功能的文档在这里 https://www.gnu.org/software/bash/manual/html_node/Filename-Expansion.html https://www.gnu.org/software/bash/manual/html_node/Pattern-Matching.html

noe132

所以如果你想传glob给程序处理,需要手动加上引号 node demo.js "**/*"