在通配符扩展的输入中使用变量替换的输出



遍历 bash 中具有特定扩展名的目录,例如

for file in ./*.{png,jpeg,jpg}; do
...
done

我正在尝试设置一个变量

extension="png,jpeg,jpg"

然后使用变量循环,例如。

for file in ./*.{$extension}; do
...
done

当我以这种方式输入它时,脚本会搜索扩展名为./*.{png,jpeg,jpg}的文件。

如何让它使用变量搜索./*.png然后./*.jpeg然后./*.jpg

忽略扩展数组上区分大小写

猫 62231525.sh

extensions=( png jpeg jpg )
path=/opt/
for ext in "${extensions[@]}"; do
find "${path}" -type f -iname "*.${ext}"
done

适用于:

bash --version
GNU bash, version 4.4.20(1)-release (x86_64-pc-linux-gnu)
..

发行版:

cat /etc/os-release | grep PRETTY
PRETTY_NAME="Ubuntu 18.04.4 LTS"

最新更新