Sponsored Content
Full Discussion: Indirect variable assignment
Top Forums Shell Programming and Scripting Indirect variable assignment Post 302459213 by clx on Monday 4th of October 2010 05:50:47 AM
Old 10-04-2010
try with eval:

Code:
eval echo \${${var1}_${var2}}

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

@ in a variable assignment

Hello Everybody, Does anyone know what the @ symbol means in a csh script, if used with a variable assignment as below @ line = 1 why not just use.... set line=1 Many thanks rkap (1 Reply)
Discussion started by: rkap
1 Replies

2. 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

3. Shell Programming and Scripting

variable assignment in new shell

Hi, I'm writing a KSH script, and at one point, I have to call a new shell and perform some variable assignments. I noticed that the assignment is not working. Please see two samples below: Command 1: #>ksh "i=2;echo I is $i" Output: #>I is Command 2: #>ksh <<EOF > i=2 > echo I... (7 Replies)
Discussion started by: maverick80
7 Replies

4. Shell Programming and Scripting

Length of an indirect variable

The construct ${#parameter} returns the number of characters in the parameter and ${!parameter} specifies an indirect variable. My question is: How do I combine these two. What I want is ${#!parameter} but this gives an error. Of course I can use: dummy=${!parameter} ${#dummy} but that's a... (0 Replies)
Discussion started by: gone_bush
0 Replies

5. Linux

How to get an Indirect Variable Value..?

Hi, I've got a small problem. If varible A stores "B" and Variable B stores C, How to get the value of variable B by using only Variable A..? I tried the following but didnt work pease help.. $ var1=vikram $ echo $var1 vikram $ vikram=sampath $ echo $vikram sampath $ echo... (6 Replies)
Discussion started by: vickramshetty
6 Replies

6. Shell Programming and Scripting

substituted variable assignment

I try to run this script, however, it gives an exception in line 3. How do I do an assignment to a substituted variable? #!/bin/bash name=fruit ext_$(eval echo ${name})=apple tmp=ext_$(eval echo ${name}) if ]; then echo "apple" elif ]; then echo "orange" fi echo ${!tmp} Error... (2 Replies)
Discussion started by: angelokh
2 Replies

7. Shell Programming and Scripting

Help with variable assignment

Hi, In AIX I have a variable with , (coma) separated values assigned to it like shown below var1=apple,boy,chris i want to convert this to var1='apple','boy','chris' the number of values assigned to var1 might change and it could be from 1 to n any suggestions please? (3 Replies)
Discussion started by: rahul9909
3 Replies

8. Shell Programming and Scripting

Usage of # in assignment of variable

guys, i would like to know what does the below does. tr=`echo $bfile | cut -d"." -f4` tr=${tr#TR} i tried with assigning a value and executed second line. but after that also value of tr remains same. thanks in advance .. (1 Reply)
Discussion started by: expert
1 Replies

9. Shell Programming and Scripting

Same Variable Assignment

Hi I have a strange problem: In my shell script I am performing a copy task: . prop.txt cp -r $dir/ $dir/archive $dir is fetched from a property file (prop.txt) which stores its value dir=/opt/data Now the problem is another dir1 comes into picture. I only want to add... (1 Reply)
Discussion started by: ankur328
1 Replies

10. Shell Programming and Scripting

Variable Assignment

Hi I am facing a problem. export local_folder=/opt/app/ cd /opt/app/abc/ abcversion="abc*" (abcga5 is inside /opt/app/abc/) echo $abcversion (it echoes the correct version as abcga5 ) Now when I reuse the value of abcversion for a below path: export... (6 Replies)
Discussion started by: ankur328
6 Replies
CREATE_FUNCTION(3)							 1							CREATE_FUNCTION(3)

create_function - Create an anonymous (lambda-style) function

SYNOPSIS
string create_function (string $args, string $code) DESCRIPTION
Creates an anonymous function from the parameters passed, and returns a unique name for it. Caution This function internally performs an eval(3) and as such has the same security issues as eval(3). Additionally it has bad perfor- mance and memory usage characteristics. If you are using PHP 5.3.0 or newer a native anonymous function should be used instead. PARAMETERS
Usually these parameters will be passed as single quote delimited strings. The reason for using single quoted strings, is to protect the variable names from parsing, otherwise, if you use double quotes there will be a need to escape the variable names, e.g. $avar. o $args - The function arguments. o $code - The function code. RETURN VALUES
Returns a unique function name as a string, or FALSE on error. EXAMPLES
Example #1 Creating an anonymous function with create_function(3) You can use this function, to (for example) create a function from information gathered at run time: <?php $newfunc = create_function('$a,$b', 'return "ln($a) + ln($b) = " . log($a * $b);'); echo "New anonymous function: $newfunc "; echo $newfunc(2, M_E) . " "; // outputs // New anonymous function: lambda_1 // ln(2) + ln(2.718281828459) = 1.6931471805599 ?> Or, perhaps to have general handler function that can apply a set of operations to a list of parameters: Example #2 Making a general processing function with create_function(3) <?php function process($var1, $var2, $farr) { foreach ($farr as $f) { echo $f($var1, $var2) . " "; } } // create a bunch of math functions $f1 = 'if ($a >=0) {return "b*a^2 = ".$b*sqrt($a);} else {return false;}'; $f2 = "return "min(b^2+a, a^2,b) = ".min($a*$a+$b,$b*$b+$a);"; $f3 = 'if ($a > 0 && $b != 0) {return "ln(a)/b = ".log($a)/$b; } else { return false; }'; $farr = array( create_function('$x,$y', 'return "some trig: ".(sin($x) + $x*cos($y));'), create_function('$x,$y', 'return "a hypotenuse: ".sqrt($x*$x + $y*$y);'), create_function('$a,$b', $f1), create_function('$a,$b', $f2), create_function('$a,$b', $f3) ); echo " Using the first array of anonymous functions "; echo "parameters: 2.3445, M_PI "; process(2.3445, M_PI, $farr); // now make a bunch of string processing functions $garr = array( create_function('$b,$a', 'if (strncmp($a, $b, 3) == 0) return "** "$a" '. 'and "$b" ** Look the same to me! (looking at the first 3 chars)";'), create_function('$a,$b', '; return "CRCs: " . crc32($a) . ", ".crc32($b);'), create_function('$a,$b', '; return "similar(a,b) = " . similar_text($a, $b, &$p) . "($p%)";') ); echo " Using the second array of anonymous functions "; process("Twas brilling and the slithy toves", "Twas the night", $garr); ?> The above example will output: Using the first array of anonymous functions parameters: 2.3445, M_PI some trig: -1.6291725057799 a hypotenuse: 3.9199852871011 b*a^2 = 4.8103313314525 min(b^2+a, a^2,b) = 8.6382729035898 ln(a)/b = 0.27122299212594 Using the second array of anonymous functions ** "Twas the night" and "Twas brilling and the slithy toves" ** Look the same to me! (looking at the first 3 chars) CRCs: -725381282, 342550513 similar(a,b) = 11(45.833333333333%) But perhaps the most common use for of lambda-style (anonymous) functions is to create callback functions, for example when using array_walk(3) or usort(3) Example #3 Using anonymous functions as callback functions <?php $av = array("the ", "a ", "that ", "this "); array_walk($av, create_function('&$v,$k', '$v = $v . "mango";')); print_r($av); ?> The above example will output: Array ( [0] => the mango [1] => a mango [2] => that mango [3] => this mango ) an array of strings ordered from shorter to longer <?php $sv = array("small", "larger", "a big string", "it is a string thing"); print_r($sv); ?> The above example will output: Array ( [0] => small [1] => larger [2] => a big string [3] => it is a string thing ) sort it from longer to shorter <?php usort($sv, create_function('$a,$b','return strlen($b) - strlen($a);')); print_r($sv); ?> The above example will output: Array ( [0] => it is a string thing [1] => a big string [2] => larger [3] => small ) SEE ALSO
Anonymous functions. PHP Documentation Group CREATE_FUNCTION(3)
All times are GMT -4. The time now is 01:49 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy