假设我有一个名为 superEcho 的函数。我希望它打印变量名称及其值。
#!/bin/bash
function superEcho() {
echo "${v_day}"
echo '${v_day}'
}
v_day=20220101
superEcho ${v_day}
# output
# 20220101
# ${v_day}
Run Code Online (Sandbox Code Playgroud)
从上面的代码中,我可以轻松获取参数名称“${v_day}”及其值。但是,如果我更改变量的名称怎么办?例如:
v_last_day=20211231
superEcho ${v_last_day}
Run Code Online (Sandbox Code Playgroud)
这个功能将不再起作用。我可以更改它以适应任何变量名称吗?
PS:这是一个包装函数,它不会要求用户更改代码。例如,您不能将变量名称作为参数传递:
superEcho "${v_day}" '${v_day}'
Run Code Online (Sandbox Code Playgroud) shell ×1