04-13-2002
Several ways, of course. One popular way is:
var2=`echo $var1 | cut -c1-3`
and some will pipe it through sed, but I prefer to use expr because it is just one command, no pipe:
var2=`expr "$var1" : "\(...\)"`
Whatever command to use, we are "nesting" the command string in back-quotes. The back-quoted command will be replaced in the command line by its output.
In ksh, I think the most efficient way (do man ksh), when you can use it:
var2=${var1#pattern} (remove one occurent from front)
var2=${var1##pattern} (remove mult occurrences from front)
var2=${var1%pattern} (remove one occurrence from end)
var2=${var1%%pattern} (remove mult occurrences from end)
But in this case, we want to remove, from the end, all but the first 3 characters, and I could not come up with an expression to represent that.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
With C Shell you can get the root, head, tail and extension of a pathname by using pathname variable modifiers.
Example Script:
#! /bin/csh
set pathvar=/home/WSJ091305.txt
echo $pathvar:r
echo $pathvar:h
echo $pathvar:t
echo $pathvar:e
The result of executing this script is:
... (7 Replies)
Discussion started by: BCarlson
7 Replies
2. Shell Programming and Scripting
Hi
I have a variable whose value is like this
i=/test/test1/test2/myfile.cd.070505123457
i would like to have the value of myfile.cd stored into another variable
my attempt is
test=${i##*/} ;echo $test ##and i get
myfile.cd.070505123457
since what i wnat is myfile.cd i try this... (19 Replies)
Discussion started by: xiamin
19 Replies
3. UNIX for Advanced & Expert Users
Hey all,
I have been using Ksh and in that I am setting Environment variables.
To set Env. Variables I have created my own file "BuildScript.sh" in which i have written :
export CLASSPATH=/somedir/some other dir/file:.
export PATH=/some dir/file:.
But when i am calling this... (4 Replies)
Discussion started by: varungupta
4 Replies
4. Shell Programming and Scripting
hi all,
how do i subract variables in shell ?? am trying to space out the headers and the output generated by the shell so they all line up :
currently the output is like this :
servers : users
server1 : 10
latestServer : 50
so i thought... (3 Replies)
Discussion started by: cesarNZ
3 Replies
5. Shell Programming and Scripting
Hi, i need help passing variables to sed using ksh.
My goal is to get particular data from log files.
first i put a mark to the log files.
echo "TEST_"`date + %m_%d_%Y_%T"` >markFile
this will produce a 'markFile' which contain text like this
TEST_06_01_2009_21:55:09
then i put the mark... (2 Replies)
Discussion started by: d.anggrianto
2 Replies
6. Shell Programming and Scripting
I'm trying to set a variable to the output of a command.
This is what the comand output to the display looks like:
/>hciconndump -v TOsiu
Dump of connection(s): TOsiu
----------------------------------------------------------------------
Process: A60Tsiu Connection: TOsiu... (2 Replies)
Discussion started by: troym72
2 Replies
7. Shell Programming and Scripting
I can't believe I can't figure this out... given this code:
CARS_DATA_LIST=`cat /tmp/file1 | awk '{print $1}' `
FMSA_DATA_LIST=`cat /tmp/file2 | awk '{print $1}' `
The value of each of the above variables is:
CARS = a b c d e f g
FMSA = a b c q r s
I want to declare a third... (8 Replies)
Discussion started by: Shoeless_Mike
8 Replies
8. Shell Programming and Scripting
Hi,
I 'm trying to send an e-mail for every different line in the .txt
for i in {1..$variable}
do
sed -n "/$i$/p" text.txt
done
I have two problems about this.
First one is that for loop doesn't work
and the second one is that i cant get the output of sed (4 Replies)
Discussion started by: ozum
4 Replies
9. Shell Programming and Scripting
Cannot combine these two strings into one line, either as a 3rd variable or echo or printing ? Frustrating.
for i in `cat /scripts/pathList.dat`
do
OldRepo= grep Oldhostname ${i}/.svn/entries | tail -1
NewRepo= grep Oldhostname ${i}/.svn/entries | tail -1 | sed '/Oldhostname/... (41 Replies)
Discussion started by: pcpinkerton
41 Replies
10. UNIX for Dummies Questions & Answers
Hi Friends ,
I want to know how to format the output for the following:
i searched in the forum and couldnt get the exact requirement.
Thanks in advance . (2 Replies)
Discussion started by: i150371485
2 Replies
LEARN ABOUT PHP
get_class_vars
GET_CLASS_VARS(3) 1 GET_CLASS_VARS(3)
get_class_vars - Get the default properties of the class
SYNOPSIS
array get_class_vars (string $class_name)
DESCRIPTION
Get the default properties of the given class.
PARAMETERS
o $class_name
- The class name
RETURN VALUES
Returns an associative array of declared properties visible from the current scope, with their default value. The resulting array elements
are in the form of varname => value. In case of an error, it returns FALSE.
CHANGELOG
+--------+---------------------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+---------------------------------------------------+
| 5.0.3 | |
| | |
| | get_class_vars(3) will only return the properties |
| | that can be accessed from the current scope. |
| | |
| 5.0.2 | |
| | |
| | Calling get_class_vars(3) will now expose all |
| | the properties as an array, unlike previous be- |
| | haviour where protected and private properties |
| | were prefixed with nul bytes. |
| | |
| 5.0.1 | |
| | |
| | Calling get_class_vars(3) will expose all prop- |
| | erties, as when converting an object to a class. |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
get_class_vars(3) example
<?php
class myclass {
var $var1; // this has no default value...
var $var2 = "xyz";
var $var3 = 100;
private $var4;
// constructor
function myclass() {
// change some properties
$this->var1 = "foo";
$this->var2 = "bar";
return true;
}
}
$my_class = new myclass();
$class_vars = get_class_vars(get_class($my_class));
foreach ($class_vars as $name => $value) {
echo "$name : $value
";
}
?>
The above example will output:
var1 :
var2 : xyz
var3 : 100
Example #2
get_class_vars(3) and scoping behaviour
<?php
function format($array)
{
return implode('|', array_keys($array)) . "
";
}
class TestCase
{
public $a = 1;
protected $b = 2;
private $c = 3;
public static function expose()
{
echo format(get_class_vars(__CLASS__));
}
}
TestCase::expose();
echo format(get_class_vars('TestCase'));
?>
The above example will output:
// 5.0.0
a| * b| TestCase c
a| * b| TestCase c
// 5.0.1 - 5.0.2
a|b|c
a|b|c
// 5.0.3 +
a|b|c
a
SEE ALSO
get_class_methods(3), get_object_vars(3).
PHP Documentation Group GET_CLASS_VARS(3)