내 코드:
read -ra var <<<$(sed -ne's/^ *:\([[:upper:]]*\).*/\1/p' /etc/sysconfig/iptables)
chains=$(whiptail --title "Add rule" --menu "chains" 16 78 5 "${var[@]}" 3>&1 1>&2 2>&3)
휩테일 메뉴에 사용 가능한 모든 iptables 체인을 포함하고 싶지만 스크립트를 실행하면 다음과 같은 결과가 나타납니다.
그러나 Whip tail 구문을 추가하면 --ok-button
다음과 같은 결과가 나타납니다.
chains=$(whiptail --title "Add rule" --menu "chains" 16 78 5 --ok-button "${var[@]}" 3>&1 1>&2 2>&3)
--ok-button(예: Ok) 뒤에 몇 가지 선택 항목을 작성해야 한다는 것을 알고 있지만 이 스크립트를 실행하면 첫 번째 그림에 표시된 내용을 얻습니다.
Beyond --menu
태그를 추가했지만 --notags
여전히 첫 번째 이미지에 표시된 내용을 얻었습니다.
공백을 제거하면 다음과 같습니다.
chains=$(whiptail --title "Add rule" --menu "chains" 16 78 5 --ok-button Ok"${var[@]}" 3>&1 1>&2 2>&3)
이해합니다:
--notags
음 , 배열의 항목만 표시하는 레이블을 추가하고 싶습니다.var
이 문제를 해결하려면 어떻게 해야 합니까?
답변1
옵션 --notags
이 --ok-button
사라져야합니다앞으로옵션 --menu
. 그 수정된 행동메뉴작은 부품.
선적 서류 비치채찍 꼬리약간의 작업이 필요합니다. 다음에 대한 매뉴얼 페이지를 찾을 수 있습니다.대화도움이 됨: 나는 다음에서 strings /usr/bin/whiptail
본다채찍 꼬리옵션 은 있는데 --notags
설명이 없네요채찍 꼬리~의맨 페이지. 대화 상자에서:
--no-tags
Some widgets (checklist, inputmenu, radiolist, menu) display a
list with two columns (a "tag" and "description"). The tag is
useful for scripting, but may not help the user. The --no-tags
option (from Xdialog) may be used to suppress the column of tags
from the display. Unlike the --no-items option, this does not
affect the data which is read from the script
대화( --notags
에 매핑됨-no-tags
X대화후자의 이름을 사용하여 함수를 먼저 구현합니다.