BASH脚本通配符不工作

BASH脚本通配符不工作,bash,wildcard,Bash,Wildcard,我试图在bash脚本中使用“*”通配符使用mkdir命令。 完整代码为: mkdir-p$EXTRACTDIR/$CV_NAME*/release 它应该在现有的“OpenCV-2.2.0”文件夹中创建一个文件夹“release”。 两台计算机正好做到了这一点,第三台计算机创建了一个文件夹OpenCV*/release,我不知道为什么 第三台计算机上的“OpenCV-2.2.0/release”不存在,因此通配符匹配将失败,并将导致一个字符串,*未被触及 cd$EXTRACTDIR/$CV_NA

我试图在bash脚本中使用“*”通配符使用
mkdir
命令。 完整代码为:
mkdir-p$EXTRACTDIR/$CV_NAME*/release

它应该在现有的“OpenCV-2.2.0”文件夹中创建一个文件夹“release”。 两台计算机正好做到了这一点,第三台计算机创建了一个文件夹OpenCV*/release,我不知道为什么

第三台计算机上的“OpenCV-2.2.0/release”不存在,因此通配符匹配将失败,并将导致一个字符串,
*
未被触及

cd$EXTRACTDIR/$CV_NAME*;mkdir发行版

如果您有多个$CV_NAME*目录,则必须使用循环。

第三台计算机上的“OpenCV-2.2.0/release”不存在,因此通配符匹配将失败,并将导致一个字符串,
*
未被触及

cd$EXTRACTDIR/$CV_NAME*;mkdir发行版

如果有多个$CV_NAME*目录,则必须使用循环。

find命令确实是一个非常有用的命令,尤其是在使用-exec选项时。我衷心建议你进一步阅读

find ./$EXTRACTDIR -type d -name $CV_NAME\* -exec mkdir {}/release \;
{}将搜索结果转换为mkdir命令。不需要mkdir(-p)的parents选项,因为文件夹必须存在才能找到。

find命令确实是一个非常有用的命令,尤其是在使用-exec选项时。我衷心建议你进一步阅读

find ./$EXTRACTDIR -type d -name $CV_NAME\* -exec mkdir {}/release \;
{}将搜索结果转换为mkdir命令。不需要mkdir(-p)的parents选项,因为文件夹必须存在才能找到