다음 코드가 있습니다:
TITLE="Some value with spaces"
DIALOG="${DIALOG=dialog} --clear --no-tags --tab-correct --backtitle $TITLE "
...
$DIALOG --title "Some title --menu "Menu" 15 60 5 "1" "menu1" "2" "menu2"
...
DIALOG는 TITLE에 공백 없이 문자열이 포함되어 있으면 제대로 작동합니다. 공백 사용 - 적절한 대체가 수행되지 않습니다.
비슷한 변형을 사용해 보았습니다. (운이 좋지 않습니다.)
$TITLE
"$TITLE"
\"$TITLE\"
${TITLE}
"${TITLE}"
\"${TITLE}\"
TITLE='Some value with spaces'
TITLE="Some\ value\ with\ spaces"
올바른 교체 방법은 무엇입니까?
답변1
이 코드는 잘 작동합니다:
TITLE="Some value with spaces"
DIALOG="${DIALOG=dialog}
OPTS=(--clear --no-tags --tab-correct --backtitle "$TITLE")
...
$DIALOG "${OPTS[@]}" --title "Some title" --menu "Menu" 15 60 5 "1" "menu1" "2" "menu2"
...
고마워요 일카츄