As far as the script, you might consider indenting the info in loops and if statements to make the more readable.
Most scripts I've seen don't do:
and
Usually it's something like:
That way it's easier to see what code belongs with which part of a statement.
Yea, that while loop. I didn't realize it was a large as it was until I looked a little harder. It initially looked like an infinite loop.
And you're going to need to echo something to the mail statements. At least on the one I just tested it on, mail is looking for a body to pass along. So something like:
Also, $? is a numeric value so use "-eq" vs "=". It'll probably work but it's always good to use the correct syntax.
I have the following crontab entry to run a shell script for every 30 minutes of every day:
30 * * * * $HOME/main.sh > $HOME/main.log 2>$HOME/error.log
after I created the crontab file I have also done:
$crontab my_crontab
I also check to make sure it exists, by using the following... (11 Replies)
Please help - I have seen others ask this question but I need a simple example of using vi in a shell script. Once I enter VI the shell script does not execute the next commands until I q!. I invoke VI and start the edit process. I want to go to the third line and replace a character with a new... (2 Replies)
Hi, need help, I would like to know what is this IF statement trying to do? When the script is executing and error out with line 9 which is the IF statement line.
if ]
then
TOPDIR=$(pwd)
else
TOPDIR=${0%/*}
fi
TOPDIR=${TOPDIR%/*}
the log file.
Current system time is... (15 Replies)
I made a shell script to execute a server in screen mode.
# start server
screen -d -m -S Test ./application
echo "Program Started Successfully"
than I'm executing it from php by
echo shell_exec('/home/script.sh');
and it is giving me this error.
"cannot make directory... (1 Reply)
Hi,
I am having a shell script which has a while loop as shown below.
while
do
sleep 60
done
I am executing this script from Informatica ETL tool command task from where we can execute UNIX commands/scripts. When i do that, i am seeing 2 processes getting started for one script... (2 Replies)
Hi
As per my requirement when I run . ./file.sh am getting the following error
-bash:ELF: command not found
when i execute as ./file.sh it is getting executed.How to resolve this.
Thanks in advance. (3 Replies)
Hi every one, i am new to shell script. my people given a task to write a shell script that should execute number of shell scripts in that. in that, if any shell script is failed to execute, we have to run the main script again, but the script should start execute from the failed script only..
it... (1 Reply)
Hi every one, i am new to shell script. my people given a task to write a shell script that should execute number of shell scripts in that. in that, if any shell script is failed to execute, we have to run the main script again, but the script should start execute from the failed script only..
it... (6 Replies)
I have bash shell script which is internally calling python script.I would like to know how long python is taking to execute.I am not allowed to do changes in python script.Please note i need to know execution time of python script which is getting executed inside shell .I need to store execution... (2 Replies)
Discussion started by: Adfire
2 Replies
LEARN ABOUT DEBIAN
io::async::test
IO::Async::Test(3pm) User Contributed Perl Documentation IO::Async::Test(3pm)NAME
"IO::Async::Test" - utility functions for use in test scripts
SYNOPSIS
use Test::More tests => 1;
use IO::Async::Test;
use IO::Async::Loop;
my $loop = IO::Async::Loop->new;
testing_loop( $loop );
my $result;
$loop->do_something(
some => args,
on_done => sub {
$result = the_outcome;
}
);
wait_for { defined $result };
is( $result, what_we_expected, 'The event happened' );
...
my $buffer = "";
my $handle = IO::Handle-> ...
wait_for_stream { length $buffer >= 10 } $handle => $buffer;
is( substr( $buffer, 0, 10, "" ), "0123456789", 'Buffer was correct' );
DESCRIPTION
This module provides utility functions that may be useful when writing test scripts for code which uses "IO::Async" (as well as being used
in the "IO::Async" test scripts themselves).
Test scripts are often synchronous by nature; they are a linear sequence of actions to perform, interspersed with assertions which check
for given conditions. This goes against the very nature of "IO::Async" which, being an asynchronisation framework, does not provide a
linear stepped way of working.
In order to write a test, the "wait_for" function provides a way of synchronising the code, so that a given condition is known to hold,
which would typically signify that some event has occured, the outcome of which can now be tested using the usual testing primitives.
Because the primary purpose of "IO::Async" is to provide IO operations on filehandles, a great many tests will likely be based around
connected pipes or socket handles. The "wait_for_stream" function provides a convenient way to wait for some content to be written through
such a connected stream.
FUNCTIONS
testing_loop( $loop )
Set the "IO::Async::Loop" object which the "wait_for" function will loop on.
wait_for( $condfunc )
Repeatedly call the "loop_once" method on the underlying loop (given to the "testing_loop" function), until the given condition function
callback returns true.
To guard against stalled scripts, if the loop indicates a timeout for 10 consequentive seconds, then an error is thrown.
wait_for_stream( $condfunc, $handle, $buffer )
As "wait_for", but will also watch the given IO handle for readability, and whenever it is readable will read bytes in from it into the
given buffer. The buffer is NOT initialised when the function is entered, in case data remains from a previous call.
$buffer can also be a CODE reference, in which case it will be invoked being passed data read from the handle, whenever it is readable.
AUTHOR
Paul Evans <leonerd@leonerd.org.uk>
perl v5.14.2 2012-10-24 IO::Async::Test(3pm)