Sponsored Content
Full Discussion: Loop over array in batches
Top Forums Shell Programming and Scripting Loop over array in batches Post 302805957 by jim mcnamara on Saturday 11th of May 2013 11:20:04 PM
Old 05-12-2013
what happens if the number of filenames in the list are not evenly divisible by 4?

Try this:
Code:
cnt=1
for fname in *
do
    dosomecommand $fname &
    cnt=$(( cnt + 1  ))
    [ $(( $cnt % 4 )) -eq 0 ]  && wait
done
wait

This is a safer and more general approach. The simple answer to your last question: you would have to develop an application that ran system() calls as worker threads, with a job control thread feeding the worker threads the new jobs as they become free.
This User Gave Thanks to jim mcnamara For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need to know abt script that invokes batches and get d log files if batches failed

hi , I need to know commands to be used in the script to invoke batches in order from other scripts and then run those batches,and how to take those logs of those batches which fails........If anyone give me a better idea to complete this entire task in a single script... (5 Replies)
Discussion started by: gopimeklord
5 Replies

2. UNIX for Dummies Questions & Answers

How to group lines into batches

Hi all I need to group all the lines that start with 2. For every 3 lines (that start with 2) i need to group them in one group and add 1 for each group. I need your help to batch the files content.The file look like this: 040171011140820070000000009650244002933170003000000075272... (2 Replies)
Discussion started by: ashikin_8119
2 Replies

3. Shell Programming and Scripting

Help with awk in array in while loop

Hi everyone:) I have 2 files - IN & OUT. Example: IN A:13:30 B:45:40 . . . UNLIMITED OUT Z:12:24 Y:20:15 . . . UNLIMITED I want first row of numbers of IN - OUT. Example 13-12 45-20 My code is (2 Replies)
Discussion started by: vincyoxy
2 Replies

4. UNIX and Linux Applications

Processing batches of files at a time

Hi I would like to run my script to process as many as 50 files at a time. Currently my script is being called like so: ./import.sh -f filename so I want to call my script in this way and it must execute every file in the directory /var/local/dsx/import (1 Reply)
Discussion started by: ladyAnne
1 Replies

5. Shell Programming and Scripting

Array not surviving while loop

So I'm trying to read datafile into an array, with each line representing one variable in the array. I'm successful at first but somehow it keeps getting erased. i=0 grep '.*' datafile | while read line do echo $i array=$(echo $line) echo ${array} #printing array to make sure it's... (5 Replies)
Discussion started by: DrSammyD
5 Replies

6. Shell Programming and Scripting

Running batches of files at a time from a script

Hi I have a script that performs a process on a file. I want to know how to include a function to run a batch of files? Here is my script #!/bin/bash #---------------------------------------------------------------------------------------------------------------------- #This... (2 Replies)
Discussion started by: ladyAnne
2 Replies

7. Shell Programming and Scripting

Array with do while and if loop

Hi All, I am trying to run a do while for an array. And in the do while, I'm trying to get a user response. Depending on the the answer, I go ahead and do something or I move on to next element in the array. So far I can read the array, but I can't get the if statement to work. Any suggestions... (5 Replies)
Discussion started by: nitin
5 Replies

8. Shell Programming and Scripting

Array Variable being Assigned Values in Loop, But Gone when Loop Completes???

Hello All, Maybe I'm Missing something here but I have NOOO idea what the heck is going on with this....? I have a Variable that contains a PATTERN of what I'm considering "Illegal Characters". So what I'm doing is looping through a string containing some of these "Illegal Characters". Now... (5 Replies)
Discussion started by: mrm5102
5 Replies

9. Shell Programming and Scripting

awk loop using array:wish to store array values from loop for use outside loop

Here's my code: awk -F '' 'NR==FNR { if (/time/ && $5>10) A=$2" "$3":"$4":"($5-01) else if (/time/ && $5<01) A=$2" "$3":"$4-01":"(59-$5) else if (/time/ && $5<=10) A=$2" "$3":"$4":0"($5-01) else if (/close/) { B=0 n1=n2; ... (2 Replies)
Discussion started by: klane
2 Replies

10. Shell Programming and Scripting

Bash script to take cPanel backup in batches

I'm trying to resolve the below scenario by writing bash script. On my managed linux server I have about 30 accounts and there is not enough space to generate full 30 accounts backup in one go and transfer it via SFTP to my Backup Synology Server. What I'm thinking of doing is breaking the... (3 Replies)
Discussion started by: humble_learner
3 Replies
IO::Async::Loop::Glib(3pm)				User Contributed Perl Documentation				IO::Async::Loop::Glib(3pm)

NAME
"IO::Async::Loop::Glib" - use "IO::Async" with Glib or GTK SYNOPSIS
use IO::Async::Loop::Glib; my $loop = IO::Async::Loop::Glib->new(); $loop->add( ... ); ... # Rest of GLib/Gtk program that uses GLib Glib::MainLoop->new->run(); Or $loop->loop_forever(); Or while(1) { $loop->loop_once(); } DESCRIPTION
This subclass of "IO::Async::Loop" uses the "Glib::MainLoop" to perform read-ready and write-ready tests. The appropriate "Glib::IO" sources are added or removed from the "Glib::MainLoop" when notifiers are added or removed from the set, or when they change their "want_writeready" status. The callbacks are called automatically by Glib itself; no special methods on this loop object are required. CONSTRUCTOR
$loop = IO::Async::Loop::Glib->new() This function returns a new instance of a "IO::Async::Loop::Glib" object. It takes no special arguments. METHODS
There are no special methods in this subclass, other than those provided by the "IO::Async::Loop" base class. $count = $loop->loop_once( $timeout ) This method calls the "iteration()" method on the underlying "Glib::MainContext". If a timeout value is supplied, then a Glib timeout will be installed, to interrupt the loop at that time. If Glib indicates that any callbacks were fired, then this method will return 1 (however, it does not mean that any "IO::Async" callbacks were invoked, as there may be other parts of code sharing the Glib main context. Otherwise, it will return 0. SEE ALSO
o Glib - Perl wrappers for the GLib utility and Object libraries o Gtk2 - Perl interface to the 2.x series of the Gimp Toolkit library AUTHOR
Paul Evans <leonerd@leonerd.org.uk> perl v5.14.2 2013-03-01 IO::Async::Loop::Glib(3pm)
All times are GMT -4. The time now is 06:28 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy