Sponsored Content
Top Forums Shell Programming and Scripting passing argument from one function to another Post 302694913 by nrjrasaxena on Friday 31st of August 2012 04:21:18 PM
Old 08-31-2012
passing argument from one function to another

Hi all,
In the given script code [1].
I want to pass the maximum value that variable "i" will have in function DivideJobs () to variable $max of function SubmitCondorJob().

Any help?
Thanks

Code:
#!/bin/bash                                                                                                                                                            
date
PATHNAME=/eos/uscms/store/user/pooja04//analysis2012/525/data/doubleele/2012/datav1/
FileName=DataFileName
#TARGETPATH=                                                                                                                                                           
SCRIPT=DataMc.sh
TEMPSCRIPT=Temp.sh
CARD=card_Data2011AB_Zee_40GeV
CondorJob=Job_condor

CopyFilesInfo() {
#    ls -ltr "$PATHNAME" | grep root | awk '{print string path $9}' string="$CONSTANT" path="$1"  > "$FileName"                                                        
    ls -ltr $PATHNAME grep root | awk '{print "$PATHNAME"$9}' > "$FileName"
    echo "FileName are Copied"
}


DivideJobs() {
    echo "Division Of Jobs"
    #split -$4  $3 chunk                                                                                                                                               
    split -10  $FileName chunk

    i=0
    for file in chunk*
      do
      ((i=i+1))
      new_file="data"$i".list"
      perl -0pe 's/\n$//' $file >  $new_file

      #to remove the processed file                                                                                                                                    
      rm -rf $file
      echo $i ' succesful'
    done
}

#For Submiting the jobs                                                                                                                                           
SubmitCondorJob () {
    max=$2
    for (( i=0; i<=$max; ++i )) ;
      do
      echo "SHELL SCRIPTING ================ $i =============="
      new_file="temp"$i".sh"
      cp $SCRIPT $new_file

      if [ $i == 0 ]; then
          source $new_file
          pause 'Press [Enter] key to continue...'
          rm $new_file
      else
          if [ $i > 0 ]; then
              { rm $CARD; sed -e "s/file$i/file$((i+1))/g" > $CARD; } < $CARD
              source $new_file
              pause 'Press [Enter] key to continue...'
              rm $new_file
          else
              echo "SUCCESFULLY DONE.."
          fi
      fi
    done
}

if ["$1" = "condorjob" ]; then
    path
    CopyFilesInfo
    DivideJobs
    SubmitCondorJob
    exit 0
fi

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Passing Argument to Function

May i know how to pass an argument to a function in a shell script? Sorry, i din stated that it is in a shell script in my previous post. Means: checkStatus() { ........... } read status; I wanna use the status in the function checkstatus, how... (2 Replies)
Discussion started by: AkumaTay
2 Replies

2. Shell Programming and Scripting

Passing more than one argument in a function

Hi All, Calling a function with one argument and storing the return value in a shell script is as below:( so far I know) value="`fun_1 "argument1"`" Its working perfectly for me. Can u help me with passing more than one argument and storing the return value Thnaks in advance JS (1 Reply)
Discussion started by: jisha
1 Replies

3. Shell Programming and Scripting

Passing global variable to a function which is called by another function

Hi , I have three funcions f1, f2 and f3 . f1 calls f2 and f2 calls f3 . I have a global variable "period" which i want to pass to f3 . Can i pass the variable directly in the definition of f3 ? Pls help . sars (4 Replies)
Discussion started by: sars
4 Replies

4. Shell Programming and Scripting

passing Argument

Hi All, i have script like below.. echo "1) first option" echo "" echo "2) second option" echo "" echo "*) please enter the correct option" read select case $select in 1) echo "first option selected" ;; 2) echo "second option selected" ;; *) echo "please enter the correct... (4 Replies)
Discussion started by: Shahul
4 Replies

5. Shell Programming and Scripting

Passing commandline argument to a function

Hi, I have 2 ksh scripts. Script1.ksh contains function definition. script1.ksh function f1() { while getopts a:c: args do case $args in a) ARG1=$OPTARG ;; c) ARG2=$OPTARG ;; \?) echo "Error no valid Arguments passed" esac done echo $ARG1 echo $ARG2 script2.sh (2 Replies)
Discussion started by: siba.s.nayak
2 Replies

6. Shell Programming and Scripting

pass function as argument to a function

I have the following code : function1 () { print "January" } function2() { case $1 in January) print "Dzisiaj mamy styczen" ;; *) ;; } main() { (1 Reply)
Discussion started by: presul
1 Replies

7. Shell Programming and Scripting

Help with passing argument

Hi, I have a script that is scheduled with cron and runs every night. The cron part looks like this: 00 20 * * 0,1,2,3,4,5,6 /usr/local/bin/BACKUP TBTARM HOT DELETE My issue is with the 3rd parameter. Somewhere in the script, i want to tell the script to delete some files if the 3rd... (7 Replies)
Discussion started by: dollypee
7 Replies

8. Shell Programming and Scripting

Argument passing

How to pass the alphabet character as a argument in case and in if block? ex: c=$1 if a-z ]] then echo "alphabet" case $1 in a-z) echo "the value is a alphabet" edit by bakunin: please use CODE-tags. We REALLY mean it. (9 Replies)
Discussion started by: Roozo
9 Replies

9. Programming

Parameter passing to function with void * as Argument

Earlier I had one structure C typedef struct c { int cc; }CS; I used to call a library function say int GetData(CS *x) which was returning me the above structure C with data. GetData(CS *x) Function call used to be like: CS CSobj; GetData(&CSObj); Now there are two... (12 Replies)
Discussion started by: rupeshkp728
12 Replies

10. UNIX for Beginners Questions & Answers

Passing a second argument

I am trying to pass a second argument like so: if ] then export ARG2=$2 else message "Second argument not specified: USAGE - $PROGRAM_NAME ARG1 ARG2" checkerror -e 2 -m "Please specify if it is a history or weekly (H or W) extract in the 2nd argument" fi however, it always goes... (4 Replies)
Discussion started by: MIA651
4 Replies
epp(3erl)						     Erlang Module Definition							 epp(3erl)

NAME
epp - An Erlang Code Preprocessor DESCRIPTION
The Erlang code preprocessor includes functions which are used by compile to preprocess macros and include files before the actual parsing takes place. EXPORTS
open(FileName, IncludePath) -> {ok,Epp} | {error, ErrorDescriptor} open(FileName, IncludePath, PredefMacros) -> {ok,Epp} | {error, ErrorDescriptor} Types FileName = atom() | string() IncludePath = [DirectoryName] DirectoryName = atom() | string() PredefMacros = [{atom(),term()}] Epp = pid() -- handle to the epp server ErrorDescriptor = term() Opens a file for preprocessing. close(Epp) -> ok Types Epp = pid() -- handle to the epp server Closes the preprocessing of a file. parse_erl_form(Epp) -> {ok, AbsForm} | {eof, Line} | {error, ErrorInfo} Types Epp = pid() AbsForm = term() Line = integer() ErrorInfo = see separate description below. Returns the next Erlang form from the opened Erlang source file. The tuple {eof, Line} is returned at end-of-file. The first form corresponds to an implicit attribute -file(File,1). , where File is the name of the file. parse_file(FileName,IncludePath,PredefMacro) -> {ok,[Form]} | {error,OpenError} Types FileName = atom() | string() IncludePath = [DirectoryName] DirectoryName = atom() | string() PredefMacros = [{atom(),term()}] Form = term() -- same as returned by erl_parse:parse_form Preprocesses and parses an Erlang source file. Note that the tuple {eof, Line} returned at end-of-file is included as a "form". ERROR INFORMATION
The ErrorInfo mentioned above is the standard ErrorInfo structure which is returned from all IO modules. It has the following format: {ErrorLine, Module, ErrorDescriptor} A string which describes the error is obtained with the following call: Module:format_error(ErrorDescriptor) SEE ALSO
erl_parse(3erl) Ericsson AB stdlib 1.17.3 epp(3erl)
All times are GMT -4. The time now is 05:24 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy