Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.os.linux.programowanie > #2195
| Newsgroups | pl.comp.os.linux.programowanie |
|---|---|
| Date | 2020-02-18 12:13 -0800 |
| Message-ID | <e88dbd6f-0ce9-494b-aac7-8d5a301e1afb@googlegroups.com> (permalink) |
| Subject | Wywołanie whiptail z pod skryptu |
| From | jaworski1978@adres.pl |
Cześć!
Wpakowałem się w robienie własnego instalatora dla Linux-a. Pierwszą wersję mam już "wstępnie zakodowaną" teraz ją uruchamiam. Napotkałem problem z jakim nie potrafię sobie poradzić. Mam skrypt 20-license.sh używający whiptail (okrojony następca dialog-a) wyświetlający licecję w celu zmuszenia użytkownika do jej zaakceptowania. Skrypt wywoływany bezpośrednio z konsoli działa. Jednak ja mam więcej skryptów do wywołania w czasie instalacji i wywołuję je "budując" komendę w Bash-u. Próbowałem różnych "sztuczek" i różnych porad z internetów jednak nic one nie dały. Skrypt się uruchamia, nie wyświetla na bieżącej konsoli okienka tylko "gdzieś indziej". Jak kliknę TAB i ENTER skrypt poprawnie się kończy potwierdzeniem licencji.
Proszę o pomoc i z góry dzięki!
Jacek
System: Kubuntu 19.10, testowane w emulatorze terminala Konsole.
Komenda która działa:
$/var/tmp/racja-istnienia-3.0.0-setup/sbin/pre-install/20-license.sh "/var/tmp/racja-istnienia-3.0.0-setup/share/racja-istnienia/license.txt"
Komenda która nie działa a (chyba) powinna:
$ i="\$(/var/tmp/racja-istnienia-3.0.0-setup/sbin/pre-install/20-license.sh \"/var/tmp/racja-istnienia-3.0.0-setup/share/racja-istnienia/license.txt\")"
$ echo $i
$(/var/tmp/racja-istnienia-3.0.0-setup/sbin/pre-install/20-license.sh "/var/tmp/racja-istnienia-3.0.0-setup/share/racja-istnienia/license.txt")
$ eval $i
To ostanie wypisuje:
: nie znaleziono polecenia
Kod problematycznego skryptu jest taki:
#!/bin/bash
############################################################################
# Global variables
gLicenseFile="$1"
gScriptName="$(basename $0)"
gScriptName="${gScriptName%.*}"
############################################################################
# Functions
function gHelp
{
echo "Directory selection script based on whiptail menu."
exit 1
}
[ "$1" = "-h" ] && gHelp
[ "$1" = "--help" ] && gHelp
############################################################################
# Main
[ ! -f "$gLicenseFile" ] && echo "License file not found! Missing file: $gLicenseFile" && exit 1
if(whiptail --title "Licensing Info" --textbox "$gLicenseFile" --scrolltext 25 75 --ok-button "Press to confirm" --fb); then
echo "License accepted!"
exit 0
else
echo "License rejected!"
exit 1
fi
Back to pl.comp.os.linux.programowanie | Previous | Next — Next in thread | Find similar
Wywołanie whiptail z pod skryptu jaworski1978@adres.pl - 2020-02-18 12:13 -0800 Re: Wywołanie whiptail z pod skryptu Roman Tyczka <noemail@because.no> - 2020-02-19 09:35 +0100
csiph-web