【问题标题】:Use a variable name as a parameter in a bash function在 bash 函数中使用变量名作为参数
【发布时间】:2016-04-07 21:39:32
【问题描述】:
#!/bin/bash

function dialog_menu()
{

    $4="$(dialog --clear --backtitle "Archlinux Installer" --title "$1" --menu "$2" 10 60 5 $3 --output-fd 1)"

}

dialog_menu "Disk Selection" "Please, choose where to install Archlinux" "sda 50G sdb 30G" DISK_SELECTION

echo $DISK_SELECTION

试过这段代码,但效果不佳。我想将 $4 作为新创建的变量传递,该变量将在此处命名为 DISK_SELECTION。我需要使用一个函数,因为我需要整个代码的多个区域。

有可能吗?

【问题讨论】:

  • 您可能想使用关联数组,然后执行arr["$4"]=$(dialog...) 然后echo "${arr[DISK_SELECTION]}"
  • 像魅力一样工作。谢谢哥们!
  • 不客气!我将发表我的评论作为答案,所以这个问题不会被列为“未回答”。感谢您的“接受”。

标签: bash function variables dialog


【解决方案1】:

您可能想使用关联数组,然后执行arr["$4"]=$(dialog...),然后:

printf '%s\n' "${arr[DISK_SELECTION]}"

【讨论】:

  • 感谢您的澄清
猜你喜欢
  • 2014-02-03
  • 1970-01-01
  • 1970-01-01
  • 2016-08-10
  • 2014-12-28
  • 1970-01-01
  • 2018-05-25
  • 1970-01-01
相关资源
最近更新 更多