Sponsored Content
Top Forums Shell Programming and Scripting To reduce the bash script length!!! Post 302506247 by anishkumarv on Saturday 19th of March 2011 02:18:32 PM
Old 03-19-2011
To reduce the bash script length!!!

Hi friends,

at last i finish my script to find the status of the URL , in this code i used all the status codes, because of this it take too much of length. with the help of wiki only i find all the status codes.

Status codes in HTTP

Quote:
and my question is do we need all the status codes necessary in this script..

and is there any other way to reduce the code using any conditonal statements..
Code:
#!/bin/bash
timevar=`date +%d-%m-%Y_%H.%M.%S` #-- > Storing Date and Time in a Variable
get_contents=`cat /urls.txt`  #-- > Getting content of website from file. Note the file should not contain any http:// as its already been taken care of
######### Next Section Does all the processing #########
for i in $get_contents
do
statuscode=`curl -connect-timeout 30 -w “totaltime:%{time_total}\n” -s -I -L http://$i | awk '{for(i = 1; i<=NF; i++) if($i=="“totaltime:0.000n”“totaltime:0.000n”HTTP/1.1") print $(i+1);}'`
case $statuscode in
200) 
    echo "$timevar $i $statuscode okay" >> /log.txt;;

201) 
    echo "$timevar $i $statuscode created" >> /log.txt;;


202) 
    echo "$timevar $i $statuscode Accepted" >> /log.txt;;


203) 
    echo "$timevar $i $statuscode Non-Authoritative Information" >> /log.txt;;


204) 
    echo "$timevar $i $statuscode No Content" >> /log.txt;;


205) 
    echo "$timevar $i $statuscode Reset Content" >> /log.txt;;

206) 
    echo "$timevar $i $statuscode Partial Content" >> /log.txt;;

207) 
    echo "$timevar $i $statuscode Multi-Status" >> /log.txt;;


226) 
    echo "$timevar $i $statuscode IM Used" >> /log.txt;;


300) 
    echo "$timevar $i $statuscode Multiple choices" >> /log.txt;;


301) 
    echo "$timevar $i $statuscode Moved Permanently" >> /log.txt;;

302) 
    echo "$timevar $i $statuscode found" >> /log.txt;;

303) 
    echo "$timevar $i $statuscode See Other" >> /log.txt;;


304) 
    echo "$timevar $i $statuscode Not Modified" >> /log.txt;;


305) 
    echo "$timevar $i $statuscode Use Proxy" >> /log.txt;;


306) 
    echo "$timevar $i $statuscode UnUsed" >> /log.txt;;



307) 
    echo "$timevar $i $statuscode Temporary Redirect" >> /log.txt;;


400) 
    echo "$timevar $i $statuscode Bad Request" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com  ;;     

401) 
    echo "$timevar $i $statuscode Unauthorized" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com |  >> /root/log.txt;;

402) 
    echo "$timevar $i $statuscode Payment Required" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

403)
    echo "$timevar $i $statuscode Forbidden" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

404)
    echo "$timevar $i $statuscode Page Not Found" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;



405)
    echo "$timevar $i $statuscode Method Not Allowed" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


406)
    echo "$timevar $i $statuscode Not Acceptable" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


407)
    echo "$timevar $i $statuscode Proxy Authentication Required" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


408)
    echo "$timevar $i $statuscode Request Timeout" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


409)
    echo "$timevar $i $statuscode Conflict" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


410)
    echo "$timevar $i $statuscode Gone" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

411)
    echo "$timevar $i $statuscode Length Required" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


412)
    echo "$timevar $i $statuscode Precondition Failed" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

413)
    echo "$timevar $i $statuscode Request Entity Too Large" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

414)
    echo "$timevar $i $statuscode Request-URI Too Long" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

415)
    echo "$timevar $i $statuscode Unsupported Media Type" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

416)
    echo "$timevar $i $statuscode Requested Range Not Satisfiable" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


417)
    echo "$timevar $i $statuscode Expectation Failed" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


422)
    echo "$timevar $i $statuscode Unprocessable Entity" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


423)
    echo "$timevar $i $statuscode Locked" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

424)
    echo "$timevar $i $statuscode Failed Dependency" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


425)
    echo "$timevar $i $statuscode Unordered Collection" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


426)
    echo "$timevar $i $statuscode Upgrade Required" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

444)
    echo "$timevar $i $statuscode No Response" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

449)
    echo "$timevar $i $statuscode Retry With" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


450)
    echo "$timevar $i $statuscode Blocked by Windows Parental Controls" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


499)
    echo "$timevar $i $statuscode Client Closed Request " >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


500)
    echo "$timevar $i $statuscode Internal Server Error" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


501)
    echo "$timevar $i $statuscode Not Implemented" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


502)
    echo "$timevar $i $statuscode Bad Gateway" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

503)
    echo "$timevar $i $statuscode Service Unavailable" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

504)
    echo "$timevar $i $statuscode Gateway Timeout" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

505)
    echo "$timevar $i $statuscode HTTP Version Not Supported" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

506)
    echo "$timevar $i $statuscode Variant Also Negotiates" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

507)
    echo "$timevar $i $statuscode Insufficient Storage" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

509)
    echo "$timevar $i $statuscode Bandwidth Limit Exceeded" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;

510)
    echo "$timevar $i $statuscode Not Extended" >> /log.txt
    echo "Status $statuscode found" | mail -s "Check of $i failed" 07anis@gmail.com;;


esac
done


Please guide me...legends!!!

With Regards
Anish kumar.V
 

9 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

how to reduce a length in a file?

i want to reduce a length in the file called text in the file im having 10 byte length. want to reduce it to 9 byte length for all lines. (5 Replies)
Discussion started by: laknar
5 Replies

2. Shell Programming and Scripting

need inputs on how i can change my script to reduce amount of time the script takes

HI , I have a list1 which consists of data that i have to search and a list2 which has the files that need to be searched .So basically i am using list1 on list2 to see if list1 data is present if found replace it .I have written the code using foreach loop for each list .This is taking the... (1 Reply)
Discussion started by: madhul2002
1 Replies

3. Shell Programming and Scripting

How to reduce the length of records in a file?

I have a file with 400 characters How can I create another file with only a portion of them (like 300 within 400) and get rid of the rest? Thanks (5 Replies)
Discussion started by: fafchi
5 Replies

4. Shell Programming and Scripting

How to make bash wrapper for java/groovy program with variable length arguments lists?

The following bash script does not work because the java/groovy code always thinks there are four arguments even if there are only 1 or 2. As you can see from my hideous backslashes, I am using cygwin bash on windows. export... (1 Reply)
Discussion started by: siegfried
1 Replies

5. Shell Programming and Scripting

Automation script to reduce the installation time

DELETED. (0 Replies)
Discussion started by: vasuvv
0 Replies

6. Shell Programming and Scripting

Reduce the number of lines in script

Hello All, I have created a script which will show the errors from a log file in between a particular section. v1=$(sed -n "/Main Report/,/Main Report End/p" input | grep -i 'Unable to find' v2=$(sed -n "/Main Report/,/Main Report End/p" input | grep -i 'Unable to add' if then echo... (5 Replies)
Discussion started by: Vikram_Tanwar12
5 Replies

7. Shell Programming and Scripting

Bash - delete from csv all the row if the first column is length >

Hi guys, i have a csv file like: USERID;COG;DESCR;FIL;OFF user001;user;test1;001;A01 user002;user;test2;002;A02 user0003;user;test3;003;A03 user004;user;test4;004;A04 user0005;user;test5;005;A05 etc.. I need to read line for line and, if value of first column is > 7 char (in this example... (4 Replies)
Discussion started by: kamose
4 Replies

8. Shell Programming and Scripting

Optimizing script to reduce execution time

AFILENAME=glow.sh FILENAME="/${AFILENAME}" WIDTHA=$(echo ${FILENAME} | wc -c) NTIME=0 RESULTS=$(for eachletter in $(echo ${FILENAME} | fold -w 1) do WIDTHTIMES=$(awk "BEGIN{printf... (5 Replies)
Discussion started by: SkySmart
5 Replies

9. Shell Programming and Scripting

How to block first bash script until second bash script script launches web server/site?

I'm new to utilities like socat and netcat and I'm not clear if they will do what I need. I have a "compileDeployStartWebServer.sh" script and a "StartBrowser.sh" script that are started by emacs/elisp at the same time in two different processes. I'm using Cygwin bash on Windows 10. My... (3 Replies)
Discussion started by: siegfried
3 Replies
All times are GMT -4. The time now is 08:48 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy