How could I use the value of return code


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How could I use the value of return code
# 1  
Old 11-23-2011
How could I use the value of return code

Hello,

I am woring on a script where I am getting strange situation.This script actually fetch the source code and tar that code and send to NAS location.This code resides in MKS tool...and we are fetching the source code on checkpoint label basis and script is working fine.First it synch the sandbox and after that it picks the checkpint value from release.txt for e.g R1_HOTFIX_220711 .The problem is when checkout happens it fetch the source code corresponding to checkpoint lable...so some files checkout and in some it gives that this files doesn't contain this tag or checkpoint label which is correct but my problem is it always retun code 128 if checkoint lable is correct or not..here the problem persist.I want to restrict my script that if checkpoint lable is not coorect it should not run next command.Here I want to tell you that if somefiles checkout then whose permisson change to read-write and except that all files are in readonly mode

Code:
#Release_File=/tmp/rohit/FetchCode.config
Release_File=/tmp/rohit/giga.config
Checkout_dir=/tmp/rohit/CheckoutRepo
Nas_Location=/tmp/rohit/Temp/
Release_Container=/tmp/rohit/PN_Release/
#Sandbox_dir=/tmp/rohit/ProjectSandbox
Sandbox_dir=/tmp/rohit/foo

MKS_Connection()
{
si connect --hostname=si.worln.com --port=7001 --user=1234LinuxAutomation --password=Hi
ReturnCode="$?"
echo $ReturnCode
if [[ "${ReturnCode}" -ne "0" ]];then
echo "mail"
else
echo "Connection to MKS Client is in progress"
fi
}

CodebaseFetch()
{
while read line
do
Repo_Path=`echo $line|cut -d ":" -f1`
Release_Name=`echo $line|cut -d ":" -f2`
Product_Name=`echo $line|cut -d ":" -f3`
CMD=$(find "${Release_Container}" -iname "${Release_Name}"_Release.txt)
for i in `cat $CMD`
do
if [[ "${Product_Name}" == "MKS" ]];then
cd ${Sandbox_dir}
CMD1=$(find "${Sandbox_dir}"/* -iname "${Release_Name}" -type d | awk -F/ '{print $(NF)}' | head -1 )
if [[ "${CMD1}" == "${Release_Name}" ]];then
si resync --sandbox="${Sandbox_dir}"/$Release_Name/$Release_Name.pj -Y --populate -f --restoreTimestamp --overwriteUnchanged --batch -R
sleep 50;
si co -R -f -l --nolock -r "${i}" --sandbox="${Sandbox_dir}"/$Release_Name/$Release_Name.pj -Y --batch --forceconfirm=yes
ReturnCode="$?"
echo $ReturnCode
if [[ "${ReturnCode}" -eq "128" ]];then
#find "${Sandbox_dir}/"${Release_Name}/ -perm 444 -type f -exec rm {} \;
tar -zcvf ESCROW-SOURCE_${Release_Name}.tar.gz ${Release_Name}
mv "${Sandbox_dir}"/ESCROW-SOURCE_${Release_Name}.tar.gz "${Nas_Location}"
else
echo "The value in ${Release_Name} is not correct"
fi
else
si dropsandbox --delete=none -Y "${Sandbox_dir}"/$Release_Name/$Release_Name.pj
mkdir "${Sandbox_dir}"/"${Release_Name}"
si createsandbox --noshared --recurse --nosparse --populate -Y --batch --cwd=${Sandbox_dir}/"${Release_Name}"/ --project=D:/"${Repo_Path}".pj
sleep 50;
si co -R -f -l --nolock -r "${i}" --sandbox="${Sandbox_dir}"/$Release_Name/$Release_Name.pj -Y --batch --forceconfirm=yes
ReturnCode="$?"
echo $ReturnCode
if [[ "${ReturnCode}" -eq "128" ]];then
#find "${Sandbox_dir}/"${Release_Name}/ -perm 444 -type f -exec rm {} \;
tar -zcvf ESCROW-SOURCE_${Release_Name}.tar.gz ${Release_Name}
mv "${Sandbox_dir}"/ESCROW-SOURCE_${Release_Name}.tar.gz "${Nas_Location}"
else
echo "The value in ${Release_Name} is not correct"
fi
fi
fi
 
done
done < "${Release_File}";
}
MKS_Connection
CodebaseFetch


probelm is in below part of the script

Code:
si co -R -f -l --nolock -r "${i}" --sandbox="${Sandbox_dir}"/$Release_Name/$Release_Name.pj -Y --batch --forceconfirm=yes
ReturnCode="$?"
echo $ReturnCode
if [[ "${ReturnCode}" -eq "128" ]];then
#find "${Sandbox_dir}/"${Release_Name}/ -perm 444 -type f -exec rm {} \;
tar -zcvf ESCROW-SOURCE_${Release_Name}.tar.gz ${Release_Name}
mv "${Sandbox_dir}"/ESCROW-SOURCE_${Release_Name}.tar.


Thanks
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Expect return code

Hello everyone Can some help me with understand return code in expect #!/usr/bin/expect set timeout 1 set SRV set user set pw spawn ssh $user@$SRV expect { "(yes/no)? " { send "yes\r" ; exp_continue } "assword: " { send "$pw\r" ; exp_continue } eof }... (2 Replies)
Discussion started by: vikus
2 Replies

2. Shell Programming and Scripting

Getting error return code

I need to try and get the error return code from the tar command when being used as follows: tar tvf tarfile 2>logfile | tee -f outputfile ErrorStat="$?" I would like to save the error return code from the tar command in a variable, howver, the example above it is saving the 'tee' error... (7 Replies)
Discussion started by: nck
7 Replies

3. Shell Programming and Scripting

return code help

Hello folks, I have a question that if i type ls command and type echo $? it always show "0", how i could do this change that when i type ls it will show me 1, actually i want to change the return code of commands from 0 to 1. Thanks Bash (5 Replies)
Discussion started by: learnbash
5 Replies

4. Shell Programming and Scripting

Need help with return code 1...

Hi Guys,, I am having a unix script which is running the DB2 Insert command. For the insert command, there were no records to be updated. SQL0100W No row was found for FETCH, UPDATE or DELETE; or the result of a query is an empty table. SQLSTATE=02000 + + echo 1 STAGE_RC=1 + ] ... (6 Replies)
Discussion started by: mac4rfree
6 Replies

5. UNIX for Dummies Questions & Answers

to pick up the Return Code ( RC) from the mailx command and return it to SAS uisng 's

Hi All, Can anyone please let me know the syntax / how to pick up the Return Code ( RC) from the mailx command and return it to SAS uisng 'system()' function and '${?}'. I am in a process to send the mail automatically with an attachment to bulk users. I have used 'Mailx' and 'Unencode'... (0 Replies)
Discussion started by: manas6
0 Replies

6. Shell Programming and Scripting

how to get return code in one line

I know how to get the returning code of a function but wonder if I can combine the follwoing two lines into one: e.g.: #!/bin/shell ... #line 1 MyFunction arg1 arg 2 #line 2 rec=$? #this will be evaluated later .... like in c/c++, we'd write one line: rec=MyFunction(arg1, arg 2) ... (6 Replies)
Discussion started by: bluemoon1
6 Replies

7. Shell Programming and Scripting

asking about return code

hi all my system is linux red hat i have a script that runs some object . the object return some code to the system i see the code by writing echo $? i want to ask in the script if $? equals 14 how shell is do that in the script thanks (3 Replies)
Discussion started by: naamas03
3 Replies

8. Programming

Return code from system()

Hi, Can any one help me in knowing how can I get the return codes/Error codes when using the system() command to fork a command? Regards, MK (1 Reply)
Discussion started by: mradulkaushik
1 Replies

9. Shell Programming and Scripting

how to get error return code

I have a unix AIX script that ftps some files (mput, mget). How can I check (in the script) to see if the ftp failed? After the ftp I move the files out of the directory but do not want to move files that have not been sent. The script will run as a cron job. (2 Replies)
Discussion started by: rayg50
2 Replies

10. UNIX for Advanced & Expert Users

Return code from PL/SQL Code

Hi Guys, I was just wondering if anybody can help me with this problem. OK, how we can get a value back from PL/SQL Script (not stored procedure/function) See the below example: (for example aaa.sh) #!/bin/ksh VALUE=`sqlplus -s user/password@test_id <<EOF @xxx.sq EOF` echo $VALUE ... (7 Replies)
Discussion started by: Shaz
7 Replies
Login or Register to Ask a Question