Mailing List
Home
Forum Home
Linux - General Red Hat Linux discussion list
Installation - Getting started with Red Hat Linux
Enterprise Linux 3 - Discussion of Red Hat Enterprise Linux 3 (Taroon)
Red Hat Linux 9 - Discussion of Red Hat Linux 9 (Shrike)
Red Hat Linux 7.3 - Discussion of Red Hat Linux 7.3 (Valhalla)
Red Hat Linux 7.2 - Discussion of Red Hat Linux 7.2 (Enigma)
Apache Web Server
Oracle database, Microsoft SQL server ...
Subjects
application/x mplayer2 plugin
RPM error: db4 error(16) from dbenv >remove: Device or resource
   busy
Command stream end of file while reading
X Windows problem (xauth)
Upgrading openoffice 1 1 rpm
FTP: connection refused
FTP: connection refused
mount: /dev/cdrom: is not a valid block device
Dell Precision 650, RedHat 9, no sound
how to trace the cause resulting in the crash of bind server
Virus on the list
UNINSTALL RPM MYSQL
usb pen drives: mounting as a user
broadcom network interface
make mrproper
sendmail configuration on redhat
Couldn 't open PID file /var/run/named/named pid Permission denied
Promise 378 controller
kernel 2 6 and /dev/sound/mixer not found
Problem using up2date
mrtg step by step howto/configuration for a newbie?
Compiling and Installing Kernel 2 6
Can 't locate module ppp0, can 't locate module ppp compress 21
HOW I CAN MAKE BOOTABLE FLOPPY DISKET
Lotus Notes under Wine
/etc/security/limits conf question
Intel E/1000 driver
Command stream end of file while reading
rpm database corrupt
qla2300 modules
 
Xmessage utility

Xmessage utility

2005-12-02       - By Garrick Staples

 Back
Reply:     1     2     3     4     5  

On Fri, Dec 02, 2005 at 03:01:48PM -0400, Shaw, Marco alleged:
> > >I thought I read the man page correctly, and something like
> > >this would work, but it doesn't:
> > >
> > ># xmessage -print -buttons "Dave's laptop:IP1" test
> > >  
> > >
> > The man page says that what follow the : is used as an exit
> > value, so,
> > for example
> >
> > xmessage -print -buttons "Dave's laptop:101,Jim's laptop:102" test
> >  >/dev/null
> > case $? in
> >     100) echo Hello Dave ;;
> >     101) echo Hello Jim;;
> >     *) echo Who Are You?
> > esac
>
> Thanks, that works great...  My next problem is that the values
> would actually be more like:
>
> xmessage -print -buttons "Dave's laptop:22.22.22.22" test
>
> The exit value will actually be an IP address.  When I run the above
> the exit value will always show as "22", and not "22.22.22.22".
>
> I may have to rely on some kind of mapping table unless you guys
> have any other ideas?

Yes, that's why I started with "You want the exit values" :)

Remember that the exit value of a program is always an integer, not a
string.

Here's an example for your script.

#!/bin/bash

labels[0]="Dave's laptop"
labels[1]="Garrick's laptop"
labels[2]="That weird guy's laptop"
labels[3]="Boss's Etch-A-Sketch"
IPs[0]="10.10.10.1"
IPs[1]="10.10.10.2"
IPs[2]="10.10.10.3"
IPs[3]="127.0.0.1"

buttonstr=$(IFS=,; echo "${labels[*]}")
xmessage -buttons "$buttonstr,Cancel" "where am ?"
choice=$(($?-101))

if [ $choice -lt 0 -o $choice -ge ${#IPs[*]} ];then
  echo "Cancelled!"
  exit 1
fi

echo ${IPs[$choice]}


--
Garrick Staples, Linux/HPCC Administrator
University of Southern California

--
Taroon-list mailing list
Taroon-list@(protected)
https://www.redhat.com/mailman/listinfo/taroon-list