Sponsored Content
Top Forums Shell Programming and Scripting Refering to compound variables with a variable name Post 302740027 by gary_w on Wednesday 5th of December 2012 10:41:28 AM
Old 12-05-2012
I believe you are trying to do something like this. Note you need Korn shell 93::
Code:
$ cat x
#!/usr/dt/bin/dtksh

## Define Compound variables.
cmp_var1=( code=10 desc="hello" )
cmp_var2=( code=20 desc="world" )

## Create array of compound variables.
set -A cmp_varnames cmp_var1 cmp_var2

## Print the descriptions.
for cmp in ${cmp_varnames[*]}
do
  # Use a name reference instead of eval.
  typeset -n mydesc="$cmp.desc"
  print $mydesc
done

exit 0
$ ./x
hello
world
$

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

compound expression in unix

I am using the code below to write a command to launch a script only if the number of users on the system is less than 10. The code below isn't working. Any suggestions? HELP.. if && ; then frizzle ; fi (3 Replies)
Discussion started by: spalmer
3 Replies

2. Shell Programming and Scripting

Trying to use 'compound variable' in a script

Hi there - am newish to shell scripting and would appreciate some advice on this... Am trying to use what I have seen called 'compound variables' in other langs but with no success in my shell script. This is the kind of thing I'm trying to do: base_val=123 stop=3 x=1 while do ... (3 Replies)
Discussion started by: neemic
3 Replies

3. Shell Programming and Scripting

Trying to use 'compound variable' in a script

Erase the space in assigment operator. array_var=`expr $base_val + $x` (1 Reply)
Discussion started by: irina
1 Replies

4. UNIX for Advanced & Expert Users

Compound indirect variable references

Using bash, I'm trying to read a .properties file (name=value pairs), assigning an indirect variable reference for each line in the file. The trick is that a property's value string may contain the name of a property that occurred earlier in the file, and I want the name of the 1st property to... (5 Replies)
Discussion started by: tkrussel
5 Replies

5. Shell Programming and Scripting

Compound command with 'find' utility?

I'm trying to write a script using the 'find' command and it's -exec option to run a compound command against the files found. Example: find . -name "*.conf" -exec cat {} | grep "#" > /tmp/comments.list \; Of course the above doesn't work. So I experimented for a bit to see if there was... (6 Replies)
Discussion started by: deckard
6 Replies

6. Shell Programming and Scripting

awk compound statements

how can i use two or multiple statements in the if part of an awk code for example i want to check two flag if they are true i will write some print operations and increase the counter. here is the c version of the code that i want to write: counter=0; if (flag1==1 && flag2==0) {... (7 Replies)
Discussion started by: gfhgfnhhn
7 Replies

7. Shell Programming and Scripting

compound variable in korn shell

in a text " Korn Shell Unix programming Manual 3° Edition" i have found this sintax to declare a compoud variable: variable=( fild1 (0 Replies)
Discussion started by: ZINGARO
0 Replies

8. Shell Programming and Scripting

compound variable in korn shell

in a text " Korn Shell Unix programming Manual 3° Edition" i have found this sintax to declare a compoud variable: variable=( fild1 fild1 ) but this sintax in ksh and sh (HP-UNIX) not work... why?? exist another solution for this type of variable ??? (5 Replies)
Discussion started by: ZINGARO
5 Replies

9. Shell Programming and Scripting

compound Bash if then statement question

I am writing a Bash script that will either clone a database or setup a standby database. So Parameter 2 will be the operation type. If the value is not clone or standby I want to throw an error message. I suppose I can also do a case block. So far i have been unable to get the syntax working... (1 Reply)
Discussion started by: gandolf989
1 Replies

10. Programming

tcl compound condition

Can anyone explain for me why this does not work in tcl: if !{( $a > "" || $b > "" )} { ....... where a and b are string vars. and this works instead: if {!( $a > "" || $b > "" )} { ........ Thanks. (6 Replies)
Discussion started by: gio001
6 Replies
XmCvtXmStringToCT(3X)													     XmCvtXmStringToCT(3X)

NAME
XmCvtXmStringToCT - A compound string function that converts a compound string to compound text SYNOPSIS
#include <Xm/Xm.h> char * XmCvtXmStringToCT (string) XmString string; DESCRIPTION
XmCvtXmStringToCT converts a compound string to a (char *) string in compound text format. The application must call XtAppInitialize before calling this function. The converter uses the font list tag associated with a given compound string segment to select a compound text for- mat for that segment. A registry defines a mapping between font list tags and compound text encoding formats. The converter uses the fol- lowing algorithm for each compound string segment: If the compound string segment tag is mapped to XmFONTLIST_DEFAULT_TAG in the registry, the converter passes the text of the compound string segment to XmbTextListToTextProperty with an encoding style of XCompoundTextStyle and uses the resulting compound text for that segment. If the compound string segment tag is mapped to an MIT registered charset in the reg- istry, the converter creates the compound text for that segment using the charset (from the registry) and the text of the compound string segment as defined in the X Consortium Standard Compound Text Encoding. If the compound string segment tag is mapped to a charset in the registry that is neither XmFONTLIST_DEFAULT_TAG nor an MIT registered charset, the converter creates the compound text for that segment using the charset (from the registry) and the text of the compound string segment as an "extended segment" with a variable number of octets per character. If the compound string segment tag is not mapped in the registry, the result is implementation dependent. Specifies a com- pound string to be converted to compound text. RETURN VALUE
Returns a (char *) string in compound text format. This format is described in the X Consortium Standard Compound Text Encoding. SEE ALSO
XmCvtCTToXmString(3X), XmFontList(3X), XmMapSegmentEncoding(3X), XmRegisterSegmentEncoding(3X), XmString(3X) XmCvtXmStringToCT(3X)
All times are GMT -4. The time now is 07:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy