背景
在为公司的翻译工具创建CLI时,传入的参数中有星号符号(*)时遇到了无法识别,打印zsh: no matches found
的问题
名词解释
*
:星号符号,英文为asterisk,以下简称星号
问题描述
在开发CLI时,将带有星号的字符串作为option的参数传入,发现报错zsh: no matches found
,如果没有星号即不会报错
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| // 此时会报错 $ my-namespace my-command my-file-path -e src/**/*.ts src/**/*.tsx src/**/*.js src/**/*.jsx
$ zsh: no matches found: src/**/*.tsx
// 此时不会报错 $ my-namespace my-command my-file-path -e src/.ts src/.tsx src/.js src/.jsx
// commander打印的参数 $ { oldFile: 'my-file-path', cmdObj: { extract: [ 'src/.ts', 'src/.tsx', 'src/.js', 'src/.jsx' ] } }
|
经过查阅资料:
stackOverflow
Github Issues
CSDN