Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 20

Thema: [Shell] Dialog - Inpuxbox?!

  1. #1
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201

    [Shell] Dialog - Inpuxbox?!

    hi,
    ich hab mal ne frage:
    wie kann man in einem Dialog eine TextBox machen? Also da wo man test eingeben kann.

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Vielleicht so:

    Code:
    dialog --inputbox Titel Höhe Breite Initialwert
    zB
    #> dialog --inputbox Name 10 60 anda_skoa

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    Und wie pack ich den Wert in einen String?

  4. #4
    Registrierter Benutzer Avatar von tuxipuxi
    Registriert seit
    30.08.2002
    Beiträge
    667
    --inputbox text height width [init]
    An input box is useful when you want to ask questions that require the user to input a string as the answer. If init is supplied it is used to initialize the input string. When entering the string, the BACKSPACE key can be used to correct typing errors. If the input string is longer than can fit in the dialog box, the input field will be scrolled. On exit, the input string will be printed on stderr.


    aus manpage dialog

  5. #5
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    also
    dialog --inputbox Name 10 60 anda_skoa blah is dann $blah?!

  6. #6
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    nein,
    die ausgabe erfolgt auf stderr.
    eine mögliche lösung wäre
    Code:
    dialog --inputbox Name 10 60 anda_skoa 2>/tmp/xxx.tmp
    blah=`cat /tmp/xxx.tmp`
    echo $blah
    usw.
    rm /tmp/xxx.tmp
    gruss
    Arthur

  7. #7
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    Ich hab jetzt aber noch ein Problem:
    wie kann ich da in einer TextBox z.B. die sachen von wget ausgeben?

  8. #8
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von arthur
    nein,
    die ausgabe erfolgt auf stderr.
    eine mögliche lösung wäre
    Code:
    dialog --inputbox Name 10 60 anda_skoa 2>/tmp/xxx.tmp
    blah=`cat /tmp/xxx.tmp`
    echo $blah
    usw.
    rm /tmp/xxx.tmp
    Man könnte auch zuerst den stderr in den stdin umleiten und den direkt in die Variable zuweisen

    Code:
    blah=$(dialog --inputbox Name 10 60 anda_skoa 2>&1)
    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  9. #9
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Original geschrieben von Giuly
    Ich hab jetzt aber noch ein Problem:
    wie kann ich da in einer TextBox z.B. die sachen von wget ausgeben?
    Eventuell mit --tailbox

    Schau einfach mal in der Manpage von dialog nach

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  10. #10
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    --tailbox file height width
    Display text from a file in a dialog box, as in a "tail -f" com-
    mand.

    --tailboxbg file height width
    Display text from a file in a dialog box as a background task,
    as in a "tail -f &" command.

    Dialog treats the background task specially if there are other
    widgets (--and-widget) on the screen concurrently. Until those
    widgets are closed (e.g., an "OK"), dialog will perform all of
    the tailboxbg widgets in the same process, polling for updates.
    You may use a tab to traverse between the widgets on the screen,
    and close them individually, e.g., by pressing ENTER. Once the
    non-tailboxbg widgets are closed, dialog forks a copy of itself
    into the background, and prints its process id if the --no-kill
    option is given.

    NOTE: Older versions of dialog forked immediately and attempted
    to update the screen individually. Besides being bad for per-
    formance, it was unworkable. Some older scripts may not work
    properly with the polled scheme.

    hä?!

  11. #11
    Registrierter Benutzer Avatar von tuxipuxi
    Registriert seit
    30.08.2002
    Beiträge
    667
    hä?!
    stark aussagekraeftiger beitrag, darf ich raten was du uns mitteilen moechtest?

    a) du kannst kein englisch?
    b) du verstehst den text inhaltlich nicht?
    c) du hast keine lust zu verstehen sondern fragst lieber?

    ich tippe auf c)

  12. #12
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    nichts von alledem...

    da steht für micht, dass es das selbe wie tail -f macht.

    Display text from a file in a dialog box, as in a "tail -f" com-
    mand.

    Packt nen Text aus ner datei in ne Dialogbox, wie im "tail -f" command.
    Nur will ich, dass er wget macht, und die Prozentanzeige und sowas in die msgbox packt.

  13. #13
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    du kannst sehr vieles mit dialog anzeigen,
    auch eine progressbar,
    nur wird dialog dir die arbeit nicht nehmen können,
    die notwendigen informationen vorzubreiten.
    und nur mit shell skript wird es wahrscheinlich sehr
    schwer, perl oder python wären hier angesagt.

    gruss
    Arthur

  14. #14
    Registrierter Benutzer Avatar von Giuly
    Registriert seit
    28.04.2003
    Ort
    HB-Nord
    Beiträge
    201
    hmm, dann versuch ichs so: er soll einen Dialog anzeigen und im hintergrund wget machen. danach den nächsten Dialog anzeigen. Aber:
    Wie lasse ich wget unsichtbar laufen, und wenns fertig ist nen Dialog anzeigen?

    Edit: eine Frage noch:
    Code:
    --gauge text height width [percent]
                  A gauge box displays a meter along the bottom of the  box.   The
                  meter  indicates  the percentage.  New percentages are read from
                  standard input, one integer per line.  The meter is  updated  to
                  reflect  each  new percentage.  If stdin is XXX, then subsequent
                  lines up to another XXX are used for a new  prompt.   The  gauge
                  exits when EOF is reached on stdin.
                                                                                                                                                                 
                  The  percent  value  denotes the initial percentage shown in the
                  meter.  If not specified, it is zero.
    Wie sag ich ihm jetzt wärend der Dialog angezigt wird, dass er 2% und so weiter zeigen soll?
    Geändert von Giuly (03-05-2003 um 12:26 Uhr)

  15. #15
    Registrierter Benutzer
    Registriert seit
    25.01.2003
    Beiträge
    222
    das ist ja das problem, du musst wget und dialog starten,
    das stdout von wget lesen und parsen und den wert dann dialog als stdin weitergeben.
    um etwas "unsichtbar" laufen zu lassen musst du einfach die ausgaben nach /dev/null umlenken.

    gruss
    Arthur

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •