Thread View: pl.comp.os.linux.programowanie
2 messages
2 total messages
Started by jaworski1978
Tue, 18 Feb 2020 20:13
Wywołanie whiptail z pod skryptu
Author: jaworski1978
Date: Tue, 18 Feb 2020 20:13
Date: Tue, 18 Feb 2020 20:13
58 lines
3574 bytes
3574 bytes
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
Re: Wywołanie whiptail z pod skryptu
Author: Roman Tyczka
Date: Wed, 19 Feb 2020 08:35
Date: Wed, 19 Feb 2020 08:35
10 lines
1964 bytes
1964 bytes
On Tue, 18 Feb 2020 12:13:41 -0800 (PST), jaworski1978@adres.pl wrote: > 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. Może raczej zapytaj na grupie pl.comp.os.linux - tam jest szansa na odpowiedź -- pozdrawiam Roman Tyczka
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads