01-22-2007
Suppose your script is something like:
#!/usr/bin/ksh
test1
test2
if [ $somevar -eq 5 ]
then
test3
fi
if [ "`hostname`" == "bigserver" ]
then
test4
fi
test5
test6
test7
etc
You can group some part using "{" and "}" and redirect the output for all command withing a group to the same file.
so
#!/usr/bin/ksh
{
test1
test2
} > resultfile1
{
if [ $somevar -eq 5 ]
then
test3
fi
if [ "`hostname`" == "bigserver" ]
then
test4
fi
} > resultfile2
{
test5
test6
test7
} resultfile3
if you want errors included in those files just change e.g.
> resultfile1
into
> resultfile1 2>&1
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
using ps -ef | fgrep "ld_data"
how do i write a script to check that it didn't already run
Thanks (2 Replies)
Discussion started by: Link_02
2 Replies
2. Shell Programming and Scripting
HI,
I have a script which will be running all the time...it is like a trigger.. wakesup every 10 minutes(trigger.sh) executes, and I want to write another script which monitors this script every one hour and if it finds that trigger script is not running it should start it and exit...and here... (9 Replies)
Discussion started by: mgirinath
9 Replies
3. UNIX for Dummies Questions & Answers
Hi,
I wish to execute a simple perl script to pass unix commands on a HPUX platform, retrieve the result and filter through the text to determine outcomes x,y and z. I am developing the code on my windows system.
I initially wrote the code to issue UNIX commands line by line, however i soon... (1 Reply)
Discussion started by: mmetcalfe
1 Replies
4. UNIX for Dummies Questions & Answers
I am looking for the syntax to check which ID is executing script.sh. If the the ID, is not user1 then I want the script to exit and return to command prompt, if it is user1, then I want the script to continue. Any help would be greatly appreciate.
Thank you.
Chris (3 Replies)
Discussion started by: cpolikowsky
3 Replies
5. Shell Programming and Scripting
Hi,
I am a unix newbie. I need to write a script to check wheteher another script is still running. If it is, then sleep for 30m and then check again if the script is running. If the script has stopped running then, I need to come out of the loop.
I am using RHEL 5.2 (2 Replies)
Discussion started by: mathews
2 Replies
6. Shell Programming and Scripting
Hi,
Can anyone please tell me how to write a shell script to check
whether a process if running or not.... if its still running then wait for sometime and if not then run the next query.
Also, Under my one main script main.sh I have to run 2 scripts simutaneously which take some time to... (2 Replies)
Discussion started by: lovepujain
2 Replies
7. UNIX for Dummies Questions & Answers
Hi All,
I am new to Unix...
Can you please let me know how we can check if a script is running or not on Solaris box? (4 Replies)
Discussion started by: Rahul466
4 Replies
8. Linux
Hello,
i allready search on google und here in the local Forum, but can't found something.
I need a query in php, that check whether a process (script) is running or not. Like this:
php query: /usr/bin/Script01 >> if runnig, then: "Script01 is Online", if not "Script01 is Offline"
I... (2 Replies)
Discussion started by: ProTechEx
2 Replies
9. Shell Programming and Scripting
Happy New Year
Is there a quick way to check to see if a script is already running.
I want to put in a check in the script to exit, if already running.
Currerntly i can only think of doing it the following way.
# ps -ef | grep -i 3_HOUSEKEEPING_FFTVTL_TO_FFTDSSU_DUPLICATION.ksh |... (5 Replies)
Discussion started by: Junes
5 Replies
10. UNIX for Beginners Questions & Answers
I have one shell script in NAS shared location. Since NAS is mounted in many servers, script can be run from any of those servers.
I want to make sure if the script is already running, it should not allow others to run it. I googled it and got some idea that i can touch one empty file in the... (8 Replies)
Discussion started by: thomasraj87
8 Replies
LEARN ABOUT DEBIAN
cgi::formbuilder::source::yaml
CGI::FormBuilder::Source::YAML(3pm) User Contributed Perl Documentation CGI::FormBuilder::Source::YAML(3pm)
NAME
CGI::FormBuilder::Source::YAML - Initialize FormBuilder from YAML file
SYNOPSIS
use CGI::FormBuilder;
my $form = CGI::FormBuilder->new(
source => {
source => 'form.fb',
type => 'YAML',
},
);
my $lname = $form->field('lname'); # like normal
DESCRIPTION
This reads a YAML (YAML::Syck) file that contains FormBuilder config options and returns a hash to be fed to CGI::FormBuilder->new().
Instead of the syntax read by CGI::FormBuilder::Source::File, it uses YAML syntax as read by YAML::Syck. That means you fully specify the
entire data structure.
LoadCode is enabled, so you can use YAML syntax for defining subroutines. This is convenient if you have a function that generates valida-
tion subrefs, for example, I have one that can check profanity using Regexp::Common.
validate:
myfield:
javascript: /^[sS]{2,50}$/
perl: !!perl/code: >-
{ My::Funk::fb_perl_validate({
min => 2,
max => 50,
profanity => 'check'
})->(shift);
}
POST PROCESSING
There are two exceptions to "pure YAML syntax" where this module does some post-processing of the result.
REFERENCES (ala CGI::FormBuilder::Source::File)
You can specify references as string values that start with &, $, @, or \% in the same way you can with CGI::FormBuilder::Source::File.
If you have a full direct package reference, it will look there, otherwise it will traverse up the caller stack and take the first it
finds.
For example, say your code serves multiple sites, and a menu gets different options depending on the server name requested:
# in My::Funk:
our $food_options = {
www.meats.com => [qw( beef chicken horta fish )],
www.veggies.com => [qw( carrot apple quorn radish )],
};
# in source file:
options: @{ $My::Funk::food_options->{ $ENV{SERVER_NAME} } }
EVAL STRINGS
You can specify an eval statement. You could achieve the same example a different way:
options: eval { $My::Funk::food_options->{ $ENV{SERVER_NAME} }; }
The cost either way is about the same -- the string is eval'd.
EXAMPLE
method: GET
header: 0
title: test
name: test
action: /test
submit: test it
linebreaks: 1
required:
- test1
- test2
fields:
- test1
- test2
- test3
- test4
fieldopts:
test1:
type: text
size: 10
maxlength: 32
test2:
type: text
size: 10
maxlength: 32
test3:
type: radio
options:
-
- 1
- Yes
-
- 0
- No
test4:
options: @test4opts
sort: &Someother::Package::sortopts
validate:
test1: /^w{3,10}$/
test2:
javascript: EMAIL
perl: eq 'test@test.foo'
test3:
- 0
- 1
test4: @test4opts
You get the idea. A bit more whitespace, but it works in a standardized way.
METHODS
new()
Normally not used directly; it is called from CGI::FormBuilder. Creates the "CGI::FormBuilder::Source::YAML" object. Arguments from the
'source' hash passed to CGI::FormBuilder->new() will become defaults, unless specified in the file.
parse($source)
Normally not used directly; it is called from CGI::FormBuilder. Parses the specified source file. No fancy params -- just a single file-
name is accepted. If the file isn't acceptable to YAML::Syck, I suppose it will die.
SEE ALSO
CGI::FormBuilder, CGI::FormBuilder::Source
AUTHOR
Copyright (c) 2006 Mark Hedges <hedges@ucsd.edu>. All rights reserved.
LICENSE
This module is free software; you may copy it under terms of the Perl license (GNU General Public License or Artistic License.)
http://www.opensource.org/licenses/index.html
perl v5.8.8 2007-12-09 CGI::FormBuilder::Source::YAML(3pm)