Once again I've somehow failed to clarify the gist of my question. Apologies, and thanks for responding.
Script B, which splits the arguments as desired, is not the problem. It uses "$@" but just loops over the args to give us a verification.
It's formatting of the input that has my stymied.
So let's assume we don't alter Script B. And Script A receives input that it has to pass onto Script B.
If we echo the input from within Script A it looks like:
one two "th ree"
If we take the above line and paste it "as is" into the call to Script B:
then the args get separated as desired.
But if we try to configure a variable with the same contents as the above string AND we want the same result:
then it does not work for me.
I don't know how to format the string of the variable such that it is processed identically to the method of just manually entering the chars.
Hi,
I'm using an array that contains compiler FLAGS
that need to be executed either before ./configure
or after the main 'make' command.
example of array containing compiler flags.
-------------------------------------------------
FLAGS="CFLAGS=\"-arch x86_64 -g -Os -pipe... (7 Replies)
Server: IBM p770
OS: AIX 6.1 TL5 SP1
When one of our develoeprs types "bash" on the command line to switch shells, it hangs. For some reason, two bash processes are created....the first bash process spawns a second bash process in the same console, causing a hang. Anyone have any idea what... (2 Replies)
I'm reading about debugging aids in bash and have come across the set command. It says in my little book that an addition to typing
set
you can also use them "on the command line when running a script..." and it lists this in a small table:
set -o option Command Line... (5 Replies)
I have been trying this a lot of different ways and haven't found too much online. Here's what I've got so far:
j=0
declare -a first
zero=(`cat $tmpfile`)
for i in "${zero}"
do
command $i >> "${first}"
... (4 Replies)
OK, I'm striving to abide by all the rules this time.
Here is a fragment of my windows10/cygwin64/bash script:
export BUPLOG=$(BackupRecords --log "$src")
robocopy $(BackupRecords -mrbd "$src" --path "$src") $(BackupRecords --appSwitches "$src") "$src" "$dst" $(BackupRecords --fileSwitches... (0 Replies)
OK, I'm striving to abide by all the rules this time.
Here is a fragment of my windows10/cygwin64/bash script:
export BUPLOG=$(BackupRecords --log "$src")
robocopy $(BackupRecords -mrbd "$src" --path "$src") $(BackupRecords --appSwitches "$src") "$src" "$dst" $(BackupRecords --fileSwitches... (15 Replies)
The below command moves all the .vcf files into the directory.
cp /home/cmccabe/Desktop/test/vcf/overall/stats/*.vcf /home/cmccabe/Desktop/NGS/annovar
When I use a bash wrapper the target.txt gets created but the text files do not get copied. All the paths are the same, but not sure why... (2 Replies)
How to run several bash commands put in bash command line without needing and requiring a script file.
Because I'm actually a windows guy and new here so for illustration is sort of :
$ bash "echo ${PATH} & echo have a nice day!"
will do output, for example:... (4 Replies)
OS : RHEL / Oracle Linux 6.8
In bash shell, how can I replace a character under the cursor with another character ?
In the below example , after I typed the following line, I realized that I meant 7013 and not 2013. So I move the cursor to the left and keep it on top of 2 (of 2013) and I want... (7 Replies)
Discussion started by: kraljic
7 Replies
LEARN ABOUT DEBIAN
test::script::run
Test::Script::Run(3pm) User Contributed Perl Documentation Test::Script::Run(3pm)NAME
Test::Script::Run - test the script with run
SYNOPSIS
use Test::Script::Run;
# customized names of bin dirs, default is qw/bin sbin script ./;
@Test::Script::Run::BIN_DIRS = qw/bin/;
run_ok( 'app_name', [ app's args ], 'you_app runs ok' );
my ( $return, $stdout, $stderr ) = run_script( 'app_name', [ app's args ] );
run_output_matches(
'app_name', [app's args],
[ 'out line 1', 'out line 2' ],
[ 'err line 1', 'err line 2' ],
'run_output_matches'
);
run_output_matches_unordered(
'app_name', [ app's args ],
[ 'out line 2', 'out line 1' ],
[ 'err line 2', 'err line 1' ],
'run_output_matches_unordered'
);
DESCRIPTION
This module exports some subs to help test and run scripts in your dist's bin/ directory, if the script path is not absolute.
Nearly all the essential code is stolen from Prophet::Test, we think subs like those should live below "Test::" namespace, that's why we
packed them and created this module.
FUNCTIONS
run_script($script, $args, $stdout, $stderr)
Runs the script $script as a perl script, setting the @INC to the same as our caller.
$script is the name of the script to be run (such as 'prophet'). $args is a reference to an array of arguments to pass to the script.
$stdout and $stderr are both optional; if passed in, they will be passed to IPC::Run3's run3 subroutineA as its $stdout and $stderr args.
Otherwise, this subroutine will create scalar references to pass to run3 instead (which are treated as strings for STDOUT/STDERR to be
written to).
Returns run3's return value and, if no $stdout and $stderr were passed in, the STDOUT and STDERR of the script that was run.
run_ok($script, $args, $msg)
Runs the script, checking that it didn't error out.
$script is the name of the script to be run (e.g. 'prophet'). $args is an optional reference to an array of arguments to pass to the script
when it is run. $msg is an optional message to print with the test. If $args is not specified, you can still pass in a $msg.
Returns nothing of interest.
run_not_ok($script, $args, $msg)
opposite of run_ok
get_perl_cmd($script, @ARGS)
Returns a list suitable for passing to "system", "exec", etc. If you pass $script then we will search upwards for it in @BIN_DIRS
is_script_output($scriptname @args, @stdout_match, @stderr_match, $msg)
Runs $scriptname, checking to see that its output matches.
$args is an array reference of args to pass to the script. $stdout_match and $stderr_match are references to arrays of expected lines. $msg
is a string message to display with the test. $stderr_match and $msg are optional. (As is $stdout_match if for some reason you expect your
script to have no output at all. But that would be silly, wouldn't it?)
Allows regex matches as well as string equality (lines in $stdout_match and $stderr_match may be Regexp objects).
run_output_matches($script, $args, $exp_stdout, $exp_stderr, $msg)
A wrapper around is_script_output that also checks to make sure the test runs without throwing an exception.
run_output_matches_unordered($script, $args, $exp_stdout, $exp_stderr, $msg)
This subroutine has exactly the same functionality as run_output_matches, but doesn't impose a line ordering when comparing the expected
and received outputs.
last_script_stdout
return last script's stdout
last_script_stderr
return last script's stderr
last_script_exit_code
return last script's exit code
DEPENDENCIES
Test::More, Test::Exception, IPC::Run3, File::Basename, File::Spec
BUGS AND LIMITATIONS
No bugs have been reported.
AUTHOR
sunnavy "<sunnavy@bestpractical.com>"
LICENCE AND COPYRIGHT
Copyright 2009 Best Practical Solutions.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.10.1 2011-01-07 Test::Script::Run(3pm)