What is this command string doing?


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers What is this command string doing?
# 1  
Old 05-02-2005
What is this command string doing?

I am new to this forum; actually, this is the first forum I've ever joined of any kind. Looking forward to using it.

I know some basic UNIX, but this is over my head. Can someone tell me what this is doing?

export MY_ROOT=${MY_ROOT:-$(expr "$0" : '\(.*\)/bin/.*')}

Thanks!
# 2  
Old 05-02-2005
First look at the expr command. It is using $0 which is the name of the script. But I'll try a few examples using $x ...
Code:
$ x=/something/bin/script
$ expr "$x" : '\(.*\)/bin/.*'
/something
$ x=/bin/script
$ expr "$x" : '\(.*\)/bin/.*'

$

So it is capturing what if anything precedes /bin in the value of $x (or $0 in your case). It is sitting in a $( ) which captures the output of a command. As in:
echo the password file has $(wc -l < /etc/passwd) lines in it.

So finally we have (in effect)

MYROOT=${MYROOT:-something}

If MYROOT has a value we use that value. Otherwise we use "something".
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Until string from remote command equals value run remote command

I solved my issue by using the following code #!/bin/bash function GET_STATUS { #values Active Passive Failed ssh -a localhost '/home/user/fakecommand.sh' } STATE="unknown" until ] do echo $STATE sleep 5 STATUS=`GET_STATUS` echo $STATUS | grep Active &&... (1 Reply)
Discussion started by: $scipt_Kid
1 Replies

2. Shell Programming and Scripting

Search several string and convert into a single line for each search string using awk command AIX?.

I need to search the file using strings "Request Type" , " Request Method" , "Response Type" and by using result set find the xml tags and convert into a single line?. below are the scenarios. Cat test Nov 10, 2012 5:17:53 AM INFO: Request Type Line 1.... (5 Replies)
Discussion started by: laknar
5 Replies

3. Shell Programming and Scripting

Want to terminate command execution when string found in the command output

Hi Experts, I am very much new to linux scripting, I am currently working on reducing my manual work and hence writing a script to automate few task. I am running below command to snmpwalk the router.. snmpwalk -v 3 -u WANDL_SU -a MD5 -A vfipmpls -x DES -X VfIpMpLs -l authPriv... (19 Replies)
Discussion started by: Hanumant.madane
19 Replies

4. Shell Programming and Scripting

sed or awk command to replace a string pattern with another string based on position of this string

here is what i want to achieve... consider a file contains below contents. the file size is large about 60mb cat dump.sql INSERT INTO `table1` (`id`, `action`, `date`, `descrip`, `lastModified`) VALUES (1,'Change','2011-05-05 00:00:00','Account Updated','2012-02-10... (10 Replies)
Discussion started by: vivek d r
10 Replies

5. Shell Programming and Scripting

Comparing a command with a string

Is this possible? If so it seems like a very easy and short script.I'd like to make a script that will print a friendly message but only if it is on your personal terminal. so the code would look like this: #!/bin/csh if ; then echo "This is a friendly message :D "; fi thats what i have... (4 Replies)
Discussion started by: Waffles
4 Replies

6. Shell Programming and Scripting

Parse a string as a command

I've a problem parsing a string as a command: Consider script stefano.sh as following: #!/usr/bin/sh txtshell="./parser.sh /ews/MyEventHandler/data/handler/StopAndMail.php eventid=StopAndMail.MVIN.6300 lot_number=1122FXB facility=EWSF3 'mailto=prova.prova@nohost.com, prova.test@nohost.com'... (2 Replies)
Discussion started by: buonstefano
2 Replies

7. UNIX for Dummies Questions & Answers

Copy a command string from the command line

How can we copy a command string from a previous command line and paste it into the cursor position on the current command line? I know that ^c will not work as the shell will interpret as an interrupt signal. Thanks, (1 Reply)
Discussion started by: Pouchie1
1 Replies

8. Shell Programming and Scripting

How to build a command into a string rather than execute the command

I'm trying to populate a command line into a variable. It appears to be executing, instead. Here's an example: mycmd='' if ...; then $mycmd='sudo ' fi $mycmd=$mycmd 'sed -i prev s/aaa/bbb/' $myfile res=`$mycmd` (I'm also not sure of the best way to execute the command from the... (1 Reply)
Discussion started by: littlejon
1 Replies

9. Shell Programming and Scripting

how to? launch command with string of command line options

my description from another thread... here's my code: #!/bin/bash IFS=$'\n' function OutputName() { input=$1 echo $input input=`echo "$input" | sed -e 's/.//'` input=`echo "$input".avi` output_name=$input } if ]; then echo... (5 Replies)
Discussion started by: TinCanFury
5 Replies

10. UNIX for Dummies Questions & Answers

Command String Help

Can someone help me with a command string that will display disk array info with mount points? (2 Replies)
Discussion started by: NetJones
2 Replies
Login or Register to Ask a Question