[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Shell--Dialog--Wo ist derFehler



Hallo Thomas,
Thomas Halinka <thohal84@yahoo.de> (So 28 Jan 2007 19:01:32 CET):
> Hallo ich bastele gerade ein wenig mit dialog rum...
> 
> Ich möchte für ein paar Server ein paar Commands hinterlegen das Ganze
> soll etwa so aussehen:
> 
> -Server1
> -Server2
>  -- ls
>  -- du....
> 
> War mir nicht parout nicht gelingen will ist das ich per menu andere
> commands aufrufen
> kann --- mit checklist etc gehts...
> 
> *#!/bin/sh
> 
> dialog --clear --title "Nr1" --menu \
>     'Manager' 10 70 4 \
>     '1' 'HOST1' \
>     '2' 'HOST2' \
>     '3' 'HOST3' \
>     '4' 'HOST4'  2> ~/tmp.$$
> 
> options=$(cat ~/tmp.$$)
> rm ~/tmp.$$
> 
> for i in $options; do
>    case "$i" in
>       \"1\" ) ls -la;;
>       \"2\" ) script2;;
>       \"3\" ) script2;;
>       \"4\" ) scipt3;;
       ~~ ~~~ 
Du darfst die '"' nicht escapen, denn nun sucht CASE ja nach "1" und
nicht nur nach 1.

Ich habe hier mal "meine" Version Deines obigen Scripts, etwas
gestrafft.

    #! /bin/bash

    TMP=$(tempfile)
    trap "rm -f $TMP" EXIT

    dialog --clear --title Nr1 --menu \
	Manager 10 70 4 \
	1 HOST1 \
	2 HOST2 \
	3 HOST3 \
	4 HOST4 \
	2>$TMP

    read OPTION <$TMP
    case "$OPTION" in 
	1)	ls -la;;
	2)	ps;;
	3)	echo HALLO;;
	4)  ;;
    esac

Festen Text, den Du selbst reingehackt hast, mußt Du nicht unbedingt
quoten, denn Du weißt ja, ob er Teile enthält, die die Shell nicht mag.
Na ja - und zu viel gequoted ist auch nicht gut, wie man jetzt weiß ;-)

    Best regards from Dresden
    Viele Grüße aus Dresden
    Heiko Schlittermann
-- 
 SCHLITTERMANN.de ---------------------------- internet & unix support -
 Heiko Schlittermann HS12-RIPE -----------------------------------------
 gnupg encrypted messages are welcome - key ID: 48D0359B ---------------
 gnupg fingerprint: 3061 CFBF 2D88 F034 E8D2  7E92 EE4E AC98 48D0 359B -

Attachment: signature.asc
Description: Digital signature


Reply to: