Sponsored Content
Top Forums Shell Programming and Scripting Perl script running multiple commands at once Post 302940269 by Corona688 on Thursday 2nd of April 2015 03:58:34 PM
Old 04-02-2015
You could open both at once, perhaps, using open() instead of backticks. How about this:

Code:
open(CMD1, "./ssh_run_cmd2.exp xxx.xxx.xxx.xxx $log "show association peer-address $ip", "-|");

open(CMD2, "./ssh_run_cmd2.exp xxx.xxx.xxx.xxx $log "show association peer-address $ip", "-|");

while($line=<CMD1>) { chomp($line); ... }
while($line=<CMD2>) { chomp($line); ... }

close(CMD1);
close(CMD2);

It doesn't read from them from the same time, but if the amount of data is smaller than 64 kilobytes, buffering should let the network communication happen simultaneously anyway. When you finish one, data may already be waiting for you on the second.

The chomp is to remove linefeeds and such, since unlike backticks open() doesn't do that for you. You just get a stream.

Running a handful of these at once is fine. Trying to run hundreds at once is not recommended.
This User Gave Thanks to Corona688 For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

[PERL] Running unix commands within Perl Scripts

I understand that in order to run basic unix commands I would normally type at the prompt, I would have to use the following format system(ls -l); or exec(ls -l); But when I actually try to use the command, the script fails to compile and keeps telling me there is an error with this line. ... (1 Reply)
Discussion started by: userix
1 Replies

2. Shell Programming and Scripting

Running unix commands through perl

Hi all, In the directory '/temp/chris' the following files exist: chris.tar, chris.txt What i am trying to do is to assign the 'chris.tar' filename in an argument through perl, in order to do that i use the system command: $file=system("ls /temp/chris/*.tmp), but in the '$file' the exit... (2 Replies)
Discussion started by: chriss_58
2 Replies

3. UNIX for Dummies Questions & Answers

running a simple script file with multiple commands

I'm trying to run a script file with multiple commands that I would normally type into the command line. The commands are: #!/bin/bash diff Test1.o0 /usr3/ronelso4/Desktop/verificationKPC/Test1.o0 > differences2 diff Test1a.o0 /usr3/ronelso4/Desktop/verificationKPC/Test1a.o0 >> differences2... (1 Reply)
Discussion started by: knelson
1 Replies

4. Shell Programming and Scripting

Running multiple unix commands in a single script

Hi, I would like to write a script with include more than 6 unix commands. my script like below: echo " script started" ls -ld bdf | grep "rama" tail -10 log.txt ... .. ... now, i want to run above unix commands one by one. example: first the ls -ld command will be... (3 Replies)
Discussion started by: koti_rama
3 Replies

5. Shell Programming and Scripting

Running unix commands in a perl script

Executing two unix commads via perl script one after another e.g: make clean bsub -i -q short make have tried using exec but the second command doesnt executes (1 Reply)
Discussion started by: rajroshan
1 Replies

6. Programming

Running Multiple Unix commands in qx

Hi All, Is there anything wrong with below syntax? qx {perldoc -v ModuleName.pm | grep -i Description } BTW, this question is related to Perl. Thanks. (3 Replies)
Discussion started by: jal_capri
3 Replies

7. Shell Programming and Scripting

Running multiple commands stored as a semi-colon separated string

Hi, Is there a way in Korn Shell that I can run multiple commands stored as a semi-colon separated string, e.g., # vs="echo a; echo b;" # $vs a; echo b; I want to be able to store commands in a variable, then run all of it once and pipe the whole output to another program without using... (2 Replies)
Discussion started by: svhyd
2 Replies

8. Shell Programming and Scripting

Get multiple values from an xml file using one of the following commands or together awk/perl/script

Hello, I have a requirement to extract the value from multiple xml node and print out the values to new file to compare. Would be done using either awk/perl or some unix script. For example sample input file: ..... ..... <factories xmi:type="resources.jdbc:DataSource"... (2 Replies)
Discussion started by: slbmind
2 Replies

9. Shell Programming and Scripting

Issue with running multiple commands withing su command

RHEL 6.2/Bash shell root user will be executing the below script. It switches to oracle user and expect to do the following things A. Source the environment variables for BATGPRD Database (the file used for sourcing is shown below after the script) B. Shutdown the DB from sqlplus -- The... (13 Replies)
Discussion started by: omega3
13 Replies

10. Shell Programming and Scripting

Check status of long running multiple curl commands in shell script

I am working on script. it reads a file which contains multiple lines Ex; curl --write-out %{http_code} --silent --output /dev/null http://hostname:port/input=1 curl --write-out %{http_code} --silent --output /dev/null http://hostname:port/input=2 curl --write-out %{http_code} --silent ... (2 Replies)
Discussion started by: oraclermanpt
2 Replies
GUARDS(1)						User Contributed Perl Documentation						 GUARDS(1)

NAME
guards - select from a list of files guarded by conditions SYNOPSIS
guards [--prefix=dir] [--path=dir2:dir2:...] [--default=0|1] [-v|--invert-match] [--list|--check] [--config=file] symbol ... DESCRIPTION
The script reads a configuration file that may contain so-called guards, file names, and comments, and writes those file names that satisfy all guards to standard output. The script takes a list of symbols as its arguments. Each line in the configuration file is processed separately. Lines may start with a number of guards. The following guards are defined: +xxx Include the file(s) on this line if the symbol xxx is defined. -xxx Exclude the file(s) on this line if the symbol xxx is defined. +!xxx Include the file(s) on this line if the symbol xxx is not defined. -!xxx Exclude the file(s) on this line if the symbol xxx is not defined. - Exclude this file. Used to avoid spurious --check messages. The guards are processed left to right. The last guard that matches determines if the file is included. If no guard is specified, the --default setting determines if the file is included. If no configuration file is specified, the script reads from standard input. The --check option is used to compare the specification file against the file system. If files are referenced in the specification that do not exist, or if files are not enlisted in the specification file warnings are printed. The --path option can be used to specify which directory or directories to scan. Multiple directories are eparated by a colon (":") character. The --prefix option specifies the location of the files. AUTHOR
Andreas Gruenbacher <agruen@suse.de> (SuSE Linux AG) perl v5.12.1 2010-07-05 GUARDS(1)
All times are GMT -4. The time now is 02:19 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy