Sponsored Content
Top Forums Shell Programming and Scripting exit out of a while loop with error Post 302293587 by ce9888 on Tuesday 3rd of March 2009 11:31:57 AM
Old 03-03-2009
Exit with 0 if the try is Ok.

Just put a comment after the loop, meaning all retries have been done.

Code:
#!/usr/bin/ksh
count=0
while [ $count -lt 3 ]
do
   count=`expr $count + 1`
   echo "Try $count"
   RUNDATE=`date "+%h%e"`
   filedate=`xyz.txt | awk '{print $6,$7}`
   if [ "$Spotfiledate" != "$RUNDATE" ] 
   then 
       echo "File's date is $Spotfiledate and today's date is $RUNDATE. They don't match"
       echo "I will sleep 30 seconds and try again; 3 tries is my limit"
       sleep 30 
   else echo "Today's file $Spotfiledate is now in."
       echo "Sleeping 30 secs to allow it to process."
       sleep 30   # maybe this sleep is not necessary
       exit 0
    fi
done
echo "Error, maximum number of retries reach!!"

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

while loop exit

i wrote a while script as part of a huge program. this script, once picked, begins to output data to the person using it. pretty easy, as the person doesn't have to keep typing commands to get the output that the while loop automatically throws out. now, the thing is, while this while-script... (3 Replies)
Discussion started by: Terrible
3 Replies

2. Shell Programming and Scripting

Method to exit a for loop

Hi All, Can someone let me know how i can exit a for loop without exiting the script itself .... will the break statement work .... please help .... -Regards (2 Replies)
Discussion started by: Rohini Vijay
2 Replies

3. Shell Programming and Scripting

how to exit a while true loop

Hi guys, I'm new to unix but loving it!! BUT this is driving me nuts as i can't work out the best way to do it. I have a while true loop that i use to monitor something. For my own reasons in ths script i have disabled the CTRL C using the trap command. But i want to put in a option to exit... (5 Replies)
Discussion started by: Noob e
5 Replies

4. Shell Programming and Scripting

Exit from loop only when selected

I am trying to get my program to exit when the answer to my question is positive, if I am asking if the answers are correct in the entries that the user inputted and the user says no how do I then have it exit? If they say everything is correct then it continue into the program, I think I am close... (2 Replies)
Discussion started by: gumbi17
2 Replies

5. Shell Programming and Scripting

Exit from loop

hi, how to exit from "if" loop?actually i have mutliple "if" conditions, i have to exit from each "if" loop,if it is true...:confused: Please suggest me... (3 Replies)
Discussion started by: sreelu
3 Replies

6. Shell Programming and Scripting

Loop exit control

Hi I would like to exit the loop below on <Enter> even if it sleeps. Is it possible? while true do my_procedure; sleep 60 done Thanks (7 Replies)
Discussion started by: zam
7 Replies

7. Shell Programming and Scripting

Strange exit of while loop

This code is used to check for duplicate ip and hostnames in an /etc/hosts file CENTRAL is path to /etc/hosts AWK =awk #check CENTRAL for duplicate ips or hostnames# grep -v "^#" $CENTRAL | $AWK '{ print $1, $2; }' | \ while read ip hostname do if... (5 Replies)
Discussion started by: trimike
5 Replies

8. Emergency UNIX and Linux Support

For loop exit

Below for loop not exiting. Can someone help? JBOSS_INST_ARGS=01 02 if ; then for i in $JBOSS_INST_ARGS; do /u/jboss-6.1.0.Final/bin/jboss_init_wise$i.sh start; done (8 Replies)
Discussion started by: vino_hymi
8 Replies

9. Shell Programming and Scripting

Exit while loop on execute script

Hi, I have first script which on IR remote command event execute the second script. If the second script is executed, it display echo "timeout expired" after 10s. This works as expected. But I also want to reset timer (increase time) in case if the second script is executed again within 10s. ... (8 Replies)
Discussion started by: armatron
8 Replies

10. UNIX for Beginners Questions & Answers

Using exit in For Loop - Is this acceptable

Hi Folks - Here is a for loop I've created and I just wanted to see if this was okay practice: for M in NAME1 NAME1 NAME3 do echo "Executing MaxL:" $M >>${_LOGFILE} 2>&1 . ${_STARTMAXLPATH}startmaxl.sh ${_MAINPATH}${_MAXLPATH}$M.mxl _RC=$? if then ... (7 Replies)
Discussion started by: SIMMS7400
7 Replies
sleep(1)						      General Commands Manual							  sleep(1)

NAME
sleep - Suspends execution for at least the specified time SYNOPSIS
sleep seconds STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: sleep: XCU5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. OPTIONS
None OPERANDS
Non-negative integer specifying the number of seconds for which execution is to be suspended. DESCRIPTION
The sleep command suspends execution of a process for at least the interval specified by seconds, which can range from 0 to 2,147,483,647 seconds. Depending on system activity, the actual time of suspension may be longer. See the sleep(3) reference page. [Tru64 UNIX] seconds can be entered as a non-negative decimal, octal, or hexadecimal value. NOTES
If sleep receives a SIGALARM signal before process execution has resumed, sleep takes one of the following actions: Terminates normally with a 0 (zero) exit status. (See the sleep(3) reference page for more information.) Ignores the signal Performs default processing EXIT STATUS
The following exit values are returned: Execution was successfully suspended for at least the requested time, or a SIGALARM signal was received. An error occurred. EXAMPLES
To display a message at 4-minute intervals for 20 minutes, create a shell script called remind containing the following: for i do sleep 240; echo $i sleep 240; echo $i sleep 240; echo $i sleep 240; echo $i sleep 240; echo $i done To display the message Try calling NHK at 4-minute intervals, enter: remind 'Try calling NHK' To run a command at regular intervals, create a shell script containing the following: while true do date sleep 60 done This displays the date and time once a minute. To execute a command after a specified interval, enter the following; (sleep 3600; echo Time's up) & This displays the message "Time's up" after one hour. ENVIRONMENT VARIABLES
The following environment variables affect the execution of sleep: Provides a default value for the internationalization variables that are unset or null. If LANG is unset or null, the corresponding value from the default locale is used. If any of the internationalization vari- ables contain an invalid setting, the utility behaves as if none of the variables had been defined. If set to a non-empty string value, overrides the values of all the other internationalization variables. Determines the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multibyte characters in arguments). Determines the locale for the for- mat and contents of diagnostic messages written to standard error. Determines the location of message catalogues for the processing of LC_MESSAGES. SEE ALSO
Commands: wait(1) Functions: alarm(3), pause(3), sigaction(2), sleep(3) Standards: standards(5) sleep(1)
All times are GMT -4. The time now is 07:35 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy