【发布时间】:2020-10-21 23:37:42
【问题描述】:
请考虑以下 Bash 函数。
#!/bin/bash
function assert_var(){
echo "check if variable with name $1 exists"
if [ -z $1 ];then
echo "EXISTS!"
else
echo "NOT EXISTS!"
fi
}
export FOO="123"
assert_var "FOO"
assert_var "BAR"
预期应该检测到变量 FOO 以及 BAR 的缺失。 为此,我需要以某种方式传递变量名并将其用作函数的参数。
如何正确地做到这一点?
【问题讨论】:
-
请务必使用
-v。更多赞成的重复是旧的,并且对早于-v的答案有更多的赞成。