为什么 shell 没有扩展 shell 脚本中的括号?

为什么 shell 没有扩展 shell 脚本中的括号?

我正在尝试使用以下脚本列出当前目录中的存档文件。

#!bin/sh
for file in *.{zip,jar}
do
echo $file
done

输出结果如下:

*.{zip,jar}

为什么 shell 没有扩大括号?

答案1

以下脚本对我有用

#!/bin/bash

for file in *.{png,jpg}; do echo $file; done
  1. 此括号扩展在 中有效bash,但在 中无效sh

  2. #!bin/sh缺少斜线,应该可以#!/bin/sh正常工作

相关内容