Sponsored Content
Full Discussion: Basic FOR loop with break
Top Forums Shell Programming and Scripting Basic FOR loop with break Post 302960697 by jasahasch on Wednesday 18th of November 2015 03:26:34 PM
Old 11-18-2015
Computer src from [url]http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO-7.html[/url]

You can use a WHILE loop like this ...
Code:
COUNTER=0; while [  $COUNTER -lt 6 ]; do; echo "Oh Nooo... The counter is $COUNTER. I need to stop the iteration and jump out of the loop"; let COUNTER=COUNTER+1 ; done

or an UNTIL loop like this ...
Code:
COUNTER=5; until [  $COUNTER -eq 4 ]; do echo "Oh Nooo... The counter is $COUNTER. I need to stop the iteration and jump out of the loop" ; let COUNTER-=1; done


Last edited by Don Cragun; 11-18-2015 at 09:10 PM.. Reason: Change ICODE tags to CODE tags.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

ksh how user can break out of loop

Hi Folks, I am trying to write a simple script which involves a potentially infinite loop repeating a number of tasks quickly. I would like to enable the user to break out of this when he/she wishes (some key stroke) but not to break out of the script (i.e. which is what happens when a user... (4 Replies)
Discussion started by: beckett
4 Replies

2. Shell Programming and Scripting

How to break the while loop???(Very Urgent)

H, I am running the following log.sh shell script. $no_of_ps=7 while do echo "hello $no_of_ps" ps_file=`tail -$no_of_ps /tmp/A380_RFS24/test.ls | head -1` no_of_ps=`expr $no_of_ps - 1` echo "package is: $ps_file" >> /tmp/A380_RFS24/log/A380_RFS24.log ps_file1=`echo $ps_file| sed... (1 Reply)
Discussion started by: sunitachoudhury
1 Replies

3. Shell Programming and Scripting

Weird loop break,- please Help

Hi all, im doing this script in which i read from a logfile line by line, my problem is this: The script was working fine until i added this statement to SSH into another machine to look for some data, it enters and retrieves the data just fine, but for some strange reason after it goes thru the... (1 Reply)
Discussion started by: sx3v1l_1n51de
1 Replies

4. Shell Programming and Scripting

How to break a loop if condition is met

I am having trouble figuring this code I want to grep a text from a file and if it match certain text it break out of the loop or it should continue searching for the text Here is what I have written but it isn't working while true f=`grep 'END OF STATUS REPORT' filename` do if ... (9 Replies)
Discussion started by: Issemael
9 Replies

5. Shell Programming and Scripting

break while loop in BASH

Hi gurus, I have the following part of code which I am using for treating input #!/bin/bash while ]; do arg=$1; shift case $arg in -u) users="$1" shift ;; -g) groups="$1" shift ;; ... (4 Replies)
Discussion started by: wakatana
4 Replies

6. Shell Programming and Scripting

For loop to break apart word

notimes=5 word=excellency the word excellency contains 10 letters. 10 letters divided by 2 = 5. which means, 5 two-groups of letters are in the word excellency. i need to perform a function on each group of letters. but the only thing i can think of is the following, which i just know... (5 Replies)
Discussion started by: SkySmart
5 Replies

7. Shell Programming and Scripting

Break the outer loop

Hi I'm comparing same files names which are in different folders . The first for loop for the files in DAY1 folder and the second for loop for the files in DAY2 folder . the first IF condition is for checking whether the file names are equal the second If condtion is for checking the... (4 Replies)
Discussion started by: smile689
4 Replies

8. Shell Programming and Scripting

Trying to run a basic for loop

OS : RHEL 6.1 Shell : Bash I had a similair post on this a few weeks back. But I didn't explain my requirements clearly then. Hence starting a new thread now. I have lots of files in /tmp/stage directory as show below. I want to loop through each files to run a command on each file. I... (8 Replies)
Discussion started by: kraljic
8 Replies

9. Shell Programming and Scripting

Basic help improving for in loop

I'm obviously very new to this. I'm trying to write a simple for loop that will read the directory names in /Users and then copy a file into the same subdir in each user directory. I have this, and it works but it isn't great. #!/bin/bash HOMEDIRS=/Users/* for dirs in $HOMEDIRS; do if ];... (5 Replies)
Discussion started by: Heath_T
5 Replies

10. Shell Programming and Scripting

Break in for loop

in my python script i have loop like below: for item in itemlist: if <condition>: <code> else: <code> if <condition>: if <condition>: <code> else: for type in types: if... (1 Reply)
Discussion started by: ctrld
1 Replies
COUNTER(9)						   BSD Kernel Developer's Manual						COUNTER(9)

NAME
counter -- SMP-friendly kernel counter implementation SYNOPSIS
#include <sys/types.h> #include <sys/systm.h> #include <sys/counter.h> counter_u64_t counter_u64_alloc(int wait); void counter_u64_free(counter_u64_t c); void counter_u64_add(counter_u64_t c, int64_t v); void counter_enter(); void counter_exit(); void counter_u64_add_protected(counter_u64_t c, int64_t v); uint64_t counter_u64_fetch(counter_u64_t c); void counter_u64_zero(counter_u64_t c); #include <sys/sysctl.h> SYSCTL_COUNTER_U64(parent, nbr, name, access, ptr, descr); SYSCTL_ADD_COUNTER_U64(ctx, parent, nbr, name, access, ptr, descr); DESCRIPTION
counter is a generic facility to create counters that can be utilized for any purpose (such as collecting statistical data). A counter is guaranteed to be lossless when several kernel threads do simultaneous updates. However, counter does not block the calling thread, also no atomic(9) operations are used for the update, therefore the counters can be used in any non-interrupt context. Moreover, counter has special optimisations for SMP environments, making counter update faster than simple arithmetic on the global variable. Thus counter is considered suitable for accounting in the performance-critical code pathes. counter_u64_alloc(wait) Allocate a new 64-bit unsigned counter. The wait argument is the malloc(9) wait flag, should be either M_NOWAIT or M_WAITOK. If M_NOWAIT is specified the operation may fail. counter_u64_free(c) Free the previously allocated counter c. counter_u64_add(c, v) Add v to c. The KPI does not guarantee any protection from wraparound. counter_enter() Enter mode that would allow to safely update several counters via counter_u64_add_protected(). On some machines this expands to critical(9) section, while on other is a nop. See IMPLEMENTATION DETAILS. counter_exit() Exit mode for updating several counters. counter_u64_add_protected(c, v) Same as counter_u64_add(), but should be preceded by counter_enter(). counter_u64_fetch(c) Take a snapshot of counter c. The data obtained is not guaranteed to reflect the real cumulative value for any moment. counter_u64_zero(c) Clear the counter c and set it to zero. SYSCTL_COUNTER_U64(parent, nbr, name, access, ptr, descr) Declare a static sysctl oid that would represent a counter. The ptr argument should be a pointer to allocated counter_u64_t. A read of the oid returns value obtained through counter_u64_fetch(). Any write to the oid zeroes it. SYSCTL_ADD_COUNTER_U64(ctx, parent, nbr, name, access, ptr, descr) Create a sysctl oid that would represent a counter. The ptr argument should be a pointer to allocated counter_u64_t. A read of the oid returns value obtained through counter_u64_fetch(). Any write to the oid zeroes it. IMPLEMENTATION DETAILS
On all architectures counter is implemented using per-CPU data fields that are specially aligned in memory, to avoid inter-CPU bus traffic due to shared use of the variables between CPUs. These are allocated using UMA_ZONE_PCPU uma(9) zone. The update operation only touches the field that is private to current CPU. Fetch operation loops through all per-CPU fields and obtains a snapshot sum of all fields. On amd64 a counter update is implemented as a single instruction without lock semantics, operating on the private data for the current CPU, which is safe against preemption and interrupts. On i386 architecture, when machine supports the cmpxchg8 instruction, this instruction is used. The multi-instruction sequence provides the same guarantees as the amd64 single-instruction implementation. On some architectures updating a counter require a critical(9) section. SEE ALSO
atomic(9), critical(9), locking(9), malloc(9), sysctl(9), uma(9) HISTORY
The counter facility first appeared in FreeBSD 10.0. AUTHORS
The counter facility was written by Gleb Smirnoff and Konstantin Belousov. BSD
February 7, 2014 BSD
All times are GMT -4. The time now is 11:46 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy