optimize the script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting optimize the script
# 1  
Old 11-26-2007
optimize the script

Hi,

I have this following script below. Its searching a log file for 2 string and if found then write the strings to success.txt and If not found write strings to failed.txt . if one found and not other...then write found to success.txt and not found to failed.txt.

I want to optimize this script in a better way, say using awk or anyother way in shell scripting.

Can anyone help?

thanks

Amit

========Script===========

#!/bin/tcsh
echo "\nImages successfully built:" > /users/amvarma/success.txt
echo "--------------------------" >> /users/amvarma/success.txt

echo "\nImages failed to build:" > /users/amvarma/failed.txt
echo "--------------------------" >> /users/amvarma/failed.txt


##### Scan c3560 log ####
echo "Scan c3560 log\n"

v1=`fgrep "cp c3560-ipbase-mz /tftpboot/amvarma/c3560-ipbase-mz" /users/amvarma/c3560-log.txt`
v2=`fgrep "cp c3560-ipservices-mz /tftpboot/amvarma/c3560-ipservices-mz" /users/amvarma/c3560-log.txt`


if [ -n "$v1" ] && [ -n "$v2" ]; then
echo "c3560-ipbase-mz" >> /users/amvarma/success.txt
echo "c3560-ipservices-mz">> /users/amvarma/success.txt
elif [ -n "$v1" ] && [ -z $v2 ]; then
echo "c3560-ipbase-mz" >> /users/amvarma/success.txt
echo "c3560-ipservices-mz">> /users/amvarma/failed.txt
elif [ -z "$v1" ] && [ -n "$v2" ]; then
echo "c3560-ipbase-mz" >> /users/amvarma/failed.txt
echo "c3560-ipservices-mz">> /users/amvarma/success.txt
elif [ -z "$v1" ] && [ -z "$v2" ]; then
echo "c3560-ipbase-mz" >> /users/amvarma/failed.txt
echo "c3560-ipservices-mz">> /users/amvarma/failed.txt
else
echo ""
fi

##scan c3560 crypto log##
echo "Scan c3560 crypto log\n"
v1=
v2=

v1=`fgrep "cp c3560-ipbasek9-mz /tftpboot/amvarma/c3560-ipbasek9-mz" /users/amvarma/c3560-crypto-log.txt`
v2=`fgrep "cp c3560-advipservicesk9-mz /tftpboot/amvarma/c3560-advipservicesk9-mz" /users/amvarma/c3560-crypto-log.txt`
v3=`fgrep "cp c3560-ipservicesk9-mz /tftpboot/amvarma/c3560-ipservicesk9-mz" /users/amvarma/c3560-crypto-log.txt`

if [ -n "$v1" ] && [ -n "$v2" ] && [ -n $v3 ]; then
echo "c3560-ipbasek9-mz" >> /users/amvarma/success.txt
echo "c3560-advipservicesk9-mz">> /users/amvarma/success.txt
echo "c3560-ipservicesk9-mz" >> /users/amvarma/success.txt
elif [ -n "$v1" ] && [ -n $v2 ] && [ -z $v3 ]; then
echo "c3560-ipbase-mz" >> /users/amvarma/success.txt
echo "c3560-advipservicesk9-mz">> /users/amvarma/success.txt
echo "c3560-ipservicesk9-mz">> /users/amvarma/failed.txt
elif [ -n "$v1" ] && [ -z $v2 ] && [ -n $v3 ]; then
echo "c3560-ipbase-mz">> /users/amvarma/success.txt
echo "c3560-advipservicesk9-mz">> /users/amvarma/failed.txt
echo "c3560-ipservicesk9-mz">> /users/amvarma/success.txt
elif [ -z "$v1" ] && [ -z $v2 ] && [ -z $v3 ]; then
echo "c3560-ipbase-mz">> /users/amvarma/failed.txt
echo "c3560-advipservicesk9-mz">> /users/amvarma/failed.txt
echo "c3560-ipservicesk9-mz">> /users/amvarma/failed.txt
else
echo ""
fi

## End ##


##### Scan c3560e log #####
echo "scan c3560e log\n"
v1=
v1=`fgrep "cp c3560e-universal-mz /tftpboot/amvarma/c3560e-universal-mz" c3560e-log.txt`
#echo $v1

if [ -z "$v1" ]; then
echo "c3560e-universal-mz">> /users/amvarma/failed.txt
else
echo "c3560e-universal-mz">> /users/amvarma/success.txt
fi


#### Scan c3560e Crypto log ####
echo "scan c3560e log\n"
v1=
v1=`fgrep "cp c3560e-universalk9-mz /tftpboot/amvarma/c3560e-universalk9-mz" c3560e-crypto-log.txt`
#echo $v1

if [ -z "$v1" ]; then
echo "cp c3560e-universalk9-mz">> /users/amvarma/failed.txt
else
echo "cp c3560e-universalk9-mz">> /users/amvarma/success.txt
fi

## End ###



###### Scan c3750 log ########

echo "Scan c3750 log\n"
v1=
v2=

v1=`fgrep "cp c3750-ipbase-mz /tftpboot/amvarma/c3750-ipbase-mz" c3750-log.txt`
v2=`fgrep "cp c3750-ipservices-mz /tftpboot/amvarma/c3750-ipservices-mz" c3750-log.txt`

#echo $v1 "\n"
#echo $v2 "\n"

if [ -n "$v1" ] && [ -n "$v2" ]; then
echo "c3750-ipbase-mz" >> /users/amvarma/success.txt
echo "c3750-ipservices-mz">> /users/amvarma/success.txt
elif [ -n "$v1" ] && [ -z $v2 ]; then
echo "c3750-ipbase-mz" >> /users/amvarma/success.txt
echo "c3750-ipservices-mz">> /users/amvarma/failed.txt
elif [ -z "$v1" ] && [ -n "$v2" ]; then
echo "c3750-ipbase-mz" >> /users/amvarma/failed.txt
echo "c3750-ipservices-mz">> /users/amvarma/success.txt
elif [ -z "$v1" ] && [ -z "$v2" ]; then
echo "c3750-ipbase-mz" >> /users/amvarma/failed.txt
echo "c3750-ipservices-mz">> /users/amvarma/failed.txt
else
echo ""
fi


# scan c3750 crypto log #
echo "Scan c3750 crypto log\n"
v1=
v2=
v3=

v1=`fgrep "cp c3750-ipbasek9-mz /tftpboot/amvarma/c3750-ipbasek9-mz" /users/amvarma/c3750-crypto-log.txt`
v2=`fgrep "cp c3750-ipservicesk9-mz /tftpboot/amvarma/c3750-ipservicesk9-mz" /users/amvarma/c3750-crypto-log.txt`
v3=`fgrep "cp c3750-advipservicesk9-mz /tftpboot/amvarma/c3750-advipservicesk9-mz" /users/amvarma/c3750-crypto-log.txt`

if [ -n "$v1" ] && [ -n "$v2" ] && [ -n $v3 ]; then
echo "c3750-ipbasek9-mz">> /users/amvarma/success.txt
echo "c3750-ipservicesk9-mz">> /users/amvarma/success.txt
echo "c3750-advipservicesk9-mz" >> /users/amvarma/success.txt
elif [ -n "$v1" ] && [ -n $v2 ] && [ -z $v3 ]; then
echo "c3750-ipbasek9-mz">> /users/amvarma/success.txt
echo "c3750-ipservicesk9-mz">> /users/amvarma/success.txt
echo "c3750-advipservicesk9-mz" >> /users/amvarma/failed.txt
elif [ -n "$v1" ] && [ -z $v2 ] && [ -n $v3 ]; then
echo "c3750-ipbasek9-mz">> /users/amvarma/success.txt
echo "c3750-ipservicesk9-mz">> /users/amvarma/failed.txt
echo "c3750-advipservicesk9-mz" >> /users/amvarma/success.txt
elif [ -z "$v1" ] && [ -n $v2 ] && [ -n $v3 ]; then
echo "c3750-ipbasek9-mz">> /users/amvarma/failed.txt
echo "c3750-ipservicesk9-mz">> /users/amvarma/failed.txt
echo "c3750-advipservicesk9-mz">> /users/amvarma/failed.txt
elif [ -z "$v1" ] && [ -z $v2 ] && [ -z $v3 ]; then
echo "c3750-ipbasek9-mz">> /users/amvarma/failed.txt
echo "c3750-ipservicesk9-mz">> /users/amvarma/failed.txt
echo "c3750-advipservicesk9-mz">> /users/amvarma/failed.txt
else
echo ""
fi

#### End ####

##### Scan c3750e log #####
echo "scan c3750e log\n"
v1=
v1=`fgrep "cp c3750e-universal-mz /tftpboot/amvarma/c3750e-universal-mz" c3750e-log.txt`
#echo $v1

if [ -z "$v1" ]; then
echo "c3750e-universal-mz">> /users/amvarma/failed.txt
else
echo "c3750e-universal-mz">> /users/amvarma/success.txt
fi

## Scan c3750e crypto log ###
v1=
v1=`fgrep "cp c3750e-universalk9-mz /tftpboot/amvarma/c3750e-universalk9-mz" c3750e-crypto-log.txt`

if [ -z "$v1" ]; then
echo "c3750e-universalk9-mz">> /users/amvarma/failed.txt
else
echo "c3750e-universalk9-mz">> /users/amvarma/success.txt
fi

### END ###



## Notify users on build status ##

Last edited by amitrajvarma; 11-26-2007 at 06:50 AM..
# 2  
Old 11-26-2007
I suppose the mail id you had provided in the mailx command is a valid email id.

Please do not post your email Ids, sample ids like abc@xyz.com would do.

Moderators : Please remove the email ID Smilie
# 3  
Old 11-26-2007
Quote:
Originally Posted by matrixmadhan
I suppose the mail id you had provided in the mailx command is a valid email id.

Please do not post your email Ids, sample ids like abc@xyz.com would do.

Moderators : Please remove the email ID Smilie
Done..

Thanks for pointing out .:-)
# 4  
Old 11-26-2007
RE:optimize the script

Quote:
Originally Posted by matrixmadhan
I suppose the mail id you had provided in the mailx command is a valid email id.

Please do not post your email Ids, sample ids like abc@xyz.com would do.

Moderators : Please remove the email ID Smilie
-----

Can u help me with this script

Thx

Amit
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Help Optimize the Script Further

Hi All, I have written a new script to check for DB space and size of dump log file before it can be imported into a Oracle DB. I'm relatively new to shell scripting. Please help me optimize this script further. (0 Replies)
Discussion started by: narayanv
0 Replies

2. Shell Programming and Scripting

Optimize shell script to run faster

data.file: contact { contact_name=royce-rolls modified_attributes=0 modified_host_attributes=0 modified_service_attributes=0 host_notification_period=24x7 service_notification_period=24x7 last_host_notification=0 last_service_notification=0 host_notifications_enabled=1... (8 Replies)
Discussion started by: SkySmart
8 Replies

3. Shell Programming and Scripting

Optimize my mv script

Hello, I'm wondering if there is a quicker way of doing this. Here is my mv script. d=/conversion/program/out cd $d ls $d > /home/tempuser/$$tmp while read line ; do a=`echo $line|cut -c1-5|sed "s/_//g"` b=`echo $line|cut -c16-21` if ;then mkdir... (13 Replies)
Discussion started by: whegra
13 Replies

4. Shell Programming and Scripting

Delete unique rows - optimize script

Hi all, I have the following input - the unique row key is 1st column cat file.txt A response C request C response D request C request C response E request The desired output should be C request (7 Replies)
Discussion started by: varu0612
7 Replies

5. UNIX for Dummies Questions & Answers

optimize if block : shell script

Hi, I need a shell script to determine if a no. is either even, greater than 4, less than 8 SHELL : ksh OS : RHEL 6 this is the if block of the script mod=`expr $num % 2` if || || then echo "No. is either even or greater than 4 or less than 8" fi this code works... (2 Replies)
Discussion started by: sam05121988
2 Replies

6. Shell Programming and Scripting

Can someone please help me optimize my code (script searches subdirectories)?

Here is my code. What it does is it reads an input file (input.txt which contains roughly 2,000 search phrases) and searches a directory for files that contains the search phrase. The directory contains roughly 1900 files and 84 subdirectories. The output is a file (output.txt) that shows only the... (23 Replies)
Discussion started by: jl487
23 Replies

7. Emergency UNIX and Linux Support

Help to optimize script running time

Dear Forum experts I have the below script which I made to run under bash shell, it runs perfectly for low records number, let us say like 100000. when I put all records (3,000,000), it's takes hours can you please suggest anything to optimize or to run in different way :-| {OFS="|";... (6 Replies)
Discussion started by: yahyaaa
6 Replies

8. Shell Programming and Scripting

Optimize and Speedup the script

Hi All, There is a script (test.sh) which is taking more CPU usage. I am attaching the script in this thread. Could anybody please help me out to optimize the script in a better way. Thanks, Gobinath (6 Replies)
Discussion started by: ntgobinath
6 Replies

9. UNIX for Dummies Questions & Answers

optimize shell script (snapshots)

I've a script to do some snapshots but the time it does so is very different... once i got a snapshot under 1 sec, on the other hand it took 3 sec, but nothing else changed, i didnt even move the cursor or something. I put the script on a ramdisk and its faster, but still swing from under 1... (1 Reply)
Discussion started by: mcW
1 Replies

10. UNIX for Dummies Questions & Answers

Can we optimize this simple script ?

Hi All , I am just a new bie in Unix/Linux . With help of tips from 'here and there' , I just created a simple script to 1. declare one array and some global variables 2. read the schema names from user (user input) and want2proceed flag 3. if user want to proceed , keep reading user... (8 Replies)
Discussion started by: rajavu
8 Replies
Login or Register to Ask a Question

Featured Tech Videos