shell-script-pt
[Top][All Lists]
Advanced

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

Problemas com variáveis


From: Carlos Henrique Tibo Narciso
Subject: Problemas com variáveis
Date: Fri, 25 Jul 2003 15:19:51 -0300

Boa tarde a todos.

Estou com um problema para passar o valor de uma variável ( SERVER_IP ) para
o resto deste script.

O que estou pretendendo fazer é o seguinte:

Com a função dialog_get_server_address, que me abre uma janela para eu
entrar com o IP do servidor, eu quero armazenar essa entrada em SERVER_IP e
depois passar este valor para ICA_SERVER_0. Só que eu não consigo fazer
isso. Depois que eu entro com o valor de SERVER_IP e direciono para
ICA_SERVER em algum lugar do script eu perco este valor e o meu programa
(wfica) não roda.

Se alguém puder me ajudar ficarei muito agradecido.

[]’s

Tibo


#! /bin/sh

. /etc/thinstation.conf
. /etc/thinstation.functions

dialog_get_server_address ICA |
read SERVER_IP
ICA_SERVER_0=$SERVER_IP

case "$1" in
init)
 nsp_get_root ica

 ICA_DIR=/lib/ICAClient/config

 cat $ROOT$ICA_DIR/appsrv.ini.tpl >$ROOT$ICA_DIR/appsrv.ini

 touch /tmp/update

 let x=-1
 let y=-1

 # Add each Applications configuration parameters

 while [ $x -le $y ]; do
   let x=$x+1
   echo -e ". /etc/thinstation.conf\n \
              ICA_SERVER=\$ICA_SERVER_$x\n \
              ICA_ENCRYPTION=\$ICA_ENCRYPTION_$x\n \
              ICA_COMPRESS=\$ICA_COMPRESS_$x\n \
              ICA_AUDIO=\$ICA_AUDIO_$x\n \
              ICA_APPLICATION_SET=\$ICA_APPLICATION_SET_$x" > /tmp/update

   . /tmp/update

   if [ -z "$ICA_APPLICATION_SET" ]; then
              ICA_APPLICATION_SET=$ICA_SERVER
              ICA_INITIAL_PROGRAM=""
   else
              ICA_INITIAL_PROGRAM="#$ICA_APPLICATION_SET"
   fi

   if [ "$ICA_APPLICATION_SET" != "" ] || [ "$ICA_SERVER" != "" ] ; then
            let y=$y+1
            echo "$ICA_APPLICATION_SET=" >> $ROOT$ICA_DIR/appsrv.ini

            echo -e "s/\$ICA_SERVER/$ICA_SERVER/g\n \
         s/\$ICA_ENCRYPTION/$ICA_ENCRYPTION/g\n \
         s/\$ICA_COMPRESS/$ICA_COMPRESS/g\n \
         s/\$ICA_AUDIO/$ICA_AUDIO/g\n \
         s/\$ICA_INITIAL_PROGRAM/$ICA_INITIAL_PROGRAM/g\n \
         s/\$ICA_APPLICATION_SET/$ICA_APPLICATION_SET/g" > /tmp/script

            echo "package='$ICA_APPLICATION_SET'; needs='x11';
title='$ICA_APPLICATION_SET'; command='nsp window ica
\"$ICA_APPLICATION_SET\"'" >> /tmp/ica
            cat $ROOT$ICA_DIR/appsrv.ini.extra.tpl | sed -f /tmp/script >>
/tmp/appsrv.ini.tmp
   fi

 done

 cat /tmp/appsrv.ini.tmp >> $ROOT$ICA_DIR/appsrv.ini

# Choose ICA colour Depth

 case "$X_COLOR_DEPTH" in
   16)
     ICA_COLOR=4;;
   24)
     ICA_COLOR=8;;
   *)
     ICA_COLOR=4;;
 esac

 echo -e "s/\$ICA_COLOR/$ICA_COLOR/g\n \
       s/\$ICA_KEYBOARD/$ICA_KEYBOARD/g\n \
       s/\$ICA_BROWSER_PROTOCOL/$ICA_BROWSER_PROTOCOL/g" > /tmp/script
 cat $ROOT$ICA_DIR/wfclient.ini.tpl | sed -f /tmp/script >
$ROOT$ICA_DIR/wfclient.ini

 rm /tmp/script
 rm /tmp/update
 rm /tmp/appsrv.ini.tmp

 ;;
console)
    while true; do
               nsp_get_root ica

               /etc/init.d/x start
               echo "Running ica -> $2"

               export DISPLAY=:0
               export XAPPLRESDIR=$ROOT/lib/X11/app-defaults

               while [ -e /tmp/.X$DISPLAY_NUMBER-lock ]; do

                        wfica -icaroot $ROOT/lib/ICAClient -nosplash &
                        sleep 2

                        setnumlock

                        # This is only for NZ, might include later as a
switch if people want
                        if [ $KEYBOARD_MAP = "nz" ] ; then
                                   xmodmap -e "keycode 0x71=Alt_L"
                        fi

                        wait

                        ps -ef | grep $X_SERVER > /dev/null
                        if [ $? = 1 ] ; then
                                   rm /tmp/.X$DISPLAY_NUMBER-lock
                        fi
                        uptime | grep day
                        if [ $? = 0 ] ; then
                                   reboot
                        fi
                        dialog_server_reconnect
              done
    done
    ;;
window)
    echo -n "Running ica "
    nsp_get_root ica
    export XAPPLRESDIR=$ROOT/lib/X11/app-defaults

dialog_get_server_address ICA |              # by tibo
    ( read ICA_APPLICATION_SET_0; ["$ICA_APPLICATION_SET_0" != "0" ] && exec
wfica -icaroot $ROOT/lib/ICAClient -nosplash -desc "ICA_APPLICATION_SET_0")
    ;;
fullscreen)
    echo -n "Running ica "
    nsp_get_root ica
    export XAPPLRESDIR=$ROOT/lib/X11/app-defaults

dialog_get_server_address ICA |
    ( read ICA_APPLICATION_SET_0; ["$ICA_APPLICATION_SET_O" != "0" ] &&
exec wfica -icaroot $ROOT/lib/ICAClient -nosplash -desc
"ICA_APPLICATION_SET_0"
    ;;

help)
    echo "Usage: /etc/init.d/ica {console|window|fullscreen} [server]
[options]"
    ;;
  *)
    exit 1
    ;;
esac

exit 0

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.502 / Virus Database: 300 - Release Date: 18/7/2003


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]