Shell script NOP


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Shell script NOP
# 1  
Old 08-07-2013
Shell script NOP

Hi,

Could anyone help me to understand the use of below two statements.
I found similar statements in rescan-scsi-bus.sh

Code:
fun1()
{
  : fun2  # what is the use of this statement?

  command1
  command2
  ....

}

fun2 ()
{
  VAR1=1
  VAR2="some string"

  : f $VAR1 s $VAR2     #what is the use of this statement?
}

Thanks,
Praveen

Last edited by Scott; 08-07-2013 at 06:43 AM.. Reason: Code tags
# 2  
Old 08-07-2013
you need understand the " : " usage in shell.

Man Page for getopts (all Section 1) - The UNIX and Linux Forums
Code:
If an option character not contained in the optstring operand is  found
       where  an option character is expected, the shell variable specified by
       name is set to the question-mark ( ? ) character. In this case, if  the
       first  character  in optstring is a colon (:, the shell variable OPTARG
       is set to the option character found, but no output is written to stan-
       dard  error;  otherwise, the shell variable OPTARG is unset and a diag-
       nostic message is written to standard error. This condition is  consid-
       ered to be an error detected in the way arguments were presented to the
       invoking application, but is not an error in getopts processing.

       If an option-argument is missing:

	   o	  If the first character of optstring is a  colon,  the  shell
		  variable specified by name is set to the colon character and
		  the shell variable OPTARG is set  to	the  option  character
		  found.

	   o	  Otherwise,  the  shell  variable specified by name is set to
		  the question-mark character (?), the shell  variable	OPTARG
		  is  unset,  and  a diagnostic message is written to standard
		  error. This condition is considered to be an error  detected
		  in the way arguments were presented to the invoking applica-
		  tion, but is not an error in getopts processing; a  diagnos-
		  tic  message	is  written  as stated, but the exit status is
		  zero.

# 3  
Old 08-07-2013
: is the shell's no-op command. The man page states: the command does nothing beyond expanding arguments and performing any specified redirections. A zero exit code is returned.

The difference to a comment is, that

Code:
fun1 ()
{
    : whatever
}

Is a syntactical correct function doing nothing, whereas

Code:
fun1 ()
{
    # whatever
}

gives you a syntax error.

Also, : >dummy would create or truncate the file dummy, for example.
# 4  
Old 08-07-2013
":" is the shell way of doing "NOP" in assembler or "pass" in Python.
Code:
place_holder_for_a_new_function()
{
        :
}

This does nothing except give a simple placeholder and uses ":" as the NOP.

Try this and see the difference:-
Code:
place_holder_for_a_new_function()
{
        # Comment!
}

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Shell script newbie- how to generate service log from shell script

Hi, I am totally a newbie to any programming languages and I just started an entry level job in an IT company. One of my recent tasks is to create a script that is able to show the log file of linux service (i.e. ntpd service) lets say, if I run my script ./test.sh, the output should be... (3 Replies)
Discussion started by: xiaogeji
3 Replies

2. Shell Programming and Scripting

Pass C shell array to another C shell script(csh) and shell(sh)

Dear Friends, Please help me on this my script name is send.csh In this i have written the statement like this set args = ( city state country price ) I want to pass this array to another c shell called receiver.csh. and i want to use it in this c shell or how to pass to... (2 Replies)
Discussion started by: SA_Palani
2 Replies

3. Shell Programming and Scripting

How to write config shell script to pass variables in master shell script?

Dear Unix gurus, We have a config shell script file which has 30 variables which needs to be passed to master unix shell script that invokes oracle database sessions. So those 30 variables need to go through the database sessions (They are inputs) via a shell script. one of the variable name... (1 Reply)
Discussion started by: dba1981
1 Replies

4. UNIX for Dummies Questions & Answers

How to write Config shell script to pass variables in master shell script?

Dear Unix gurus, We have a config shell script file which has 30 variables which needs to be passed to master unix shell script that invokes oracle database sessions. So those 30 variables need to go through the database sessions (They are inputs) via a shell script. one of the variable name... (1 Reply)
Discussion started by: dba1981
1 Replies

5. Shell Programming and Scripting

Unable to pass shell script variable to awk command in same shell script

I have a shell script (.sh) and I want to pass a parameter value to the awk command but I am getting exception, please assist. diff=$1$2.diff id=$2 new=new_$diff echo "My id is $1" echo "I want to sync for user account $id" ##awk command I am using is as below cat $diff | awk... (2 Replies)
Discussion started by: Ashunayak
2 Replies

6. Shell Programming and Scripting

Correct shell script to Call One shell script from another shell script

Hi All, I have new for shell scripting. Problem : I have one scrip at serv1 and path of server is /apps/dev/provimage/scripts and script name:extract_ancillary.bat. I need to call this script at server2(my working server) and execute at server2 . Please let me know how to build the... (5 Replies)
Discussion started by: Vineeta Nigam
5 Replies

7. Shell Programming and Scripting

call another shell script and pass parameters to that shell script

Hi, I basically have 2 shell scripts. One is a shell script will get the variable value from the user. The variable is nothing but the IP of the remote system. Another shell script is a script that does the job of connecting to the remote system using ssh. This uses a expect utility in turn. ... (2 Replies)
Discussion started by: sunrexstar
2 Replies

8. Shell Programming and Scripting

How to use ssh execute other shell script on other host (shell script include nohup)?

i want use ssh on the host01 to execute autoexec.sh on the host02 like following : host01> ssh host02 autoexec.sh autoexec.sh include nohup command like follwing : nohup /home/jack/deletedata.sh & after i execute ssh host02 autoexec.sh one the host01. i can't found deletedata.sh... (1 Reply)
Discussion started by: orablue
1 Replies

9. Shell Programming and Scripting

invoking a shell script inside cgi shell script

Hi, I have an HTML form through which I get some text as input. i need to run a shell script say script.sh inside a perl-cgi script named main_cgi.sh on the form input. I want to write the contents of the form in a file and then perform some command line operations like grep, cat on the text... (2 Replies)
Discussion started by: smriti_shridhar
2 Replies

10. Shell Programming and Scripting

How to Run a shell script from Perl script in Parent shell?

Hi Perl/UNIX experts, I have a problem in running a shell script from my perl script (auto.pl). I run the perl script using perl auto.pl from the shell prompt The shell script picks the files in "input" folder and procesess it. The shell script blue.sh has this code. export... (16 Replies)
Discussion started by: hifake
16 Replies
Login or Register to Ask a Question