grub2 shell的目标是成为一个极简式的bash类shell。
但是我如何在grub2中增加一个变量呢?
在巴什我会这样做:
var=$((var+1))或
((var=var+1))在grub2中,这些调用会出现语法错误。如何在grub2外壳中实现这一点?
发布于 2017-02-15 09:25:48
Grub2没有内置的算术支持。如果您需要添加Lua支持,请参阅this answer了解详细信息。
发布于 2020-01-02 19:32:09
基于this answer (其他答案已经链接),以下内容似乎可以使用GRUB的regexp命令(允许从任意数字0-5递增,根据需要添加更多的对):
num=0
incr="" ; for x in 0,1 1,2 2,3 3,4 4,5 5,6 ; do
regexp --set=1:incr "${num},([0-9]+)" "${x}"
if [ "$incr" != "" ] ; then
echo "$num incremented to $incr"
num=$incr
break
fi
done减少类似的工作(只需翻转两个正则表达式部分):
num=6
decr="" ; for x in 0,1 1,2 2,3 3,4 4,5 5,6 ; do
regexp --set=1:decr "([0-9]+),${num}" "${x}"
if [ "$decr" != "" ] ; then
echo "$num decremented to $decr"
num=$decr
break
fi
donehttps://stackoverflow.com/questions/42244685
复制相似问题