GRUB 脚本中的文件名通配符扩展

Man*_*uel 5 scripting grub grub2

GRUB 脚本中是否可以进行文件名通配符扩展?

就像是:

for i in directory/*; do echo $i; done
Run Code Online (Sandbox Code Playgroud)

我的目的是让 GRUB 加载位于某些目录中的不同 cfg 文件。

Nor*_*ius 3

是的,如果您有该regexp模块,这是可能的,该模块似乎使用与 bash 相同的文件名扩展语法。我偶然发现了这一点,但我仍然不确定文档中是否提到了此功能。例子:

insmod regexp
for i in /opt/*; do echo $i; done
Run Code Online (Sandbox Code Playgroud)

我将其输入系统上的 GRUB 2.02 shell 并收到以下输出:

/opt/sublime_text
/opt/google
Run Code Online (Sandbox Code Playgroud)