Sponsored Content
Top Forums Shell Programming and Scripting Script to run command one by one Post 302793739 by Don Cragun on Saturday 13th of April 2013 11:16:55 AM
Old 04-13-2013
The script that you suggested will overwrite the output of all previously executed scripts with the output of the last script to run. The wait commands in your script don't do anything. (You didn't start the cmd* scripts asynchronously and it wouldn't make any difference if you did.) If you have some long running cmd* scripts, run this shell script in the background; not the jobs started by the script. You might want to try something like:
Code:
#!/bin/bash
i=1
while [ -f cmd$i ]
do      sh cmd$i > cmd$i_stdout.txt 2> cmd$i_stderr.txt
        i=$((i + 1))
done

Note that you specified that this is a bash script, but you're executing the cmd* scripts using sh (rather than bash). If the scripts to be run are executable scripts, you could omit the "sh" in red in the above script and let a #! line in each script specify the shell to be used for any script that doesn't want to use the system's default shell. This script will run any number of cmd* scripts as long as their names have consecutive integer values (starting with "1") at the ends of the names.

PS I didn't notice that you had used >> instead of > for later jobs, so you won't be overwriting the output. You may still want to consider the redirection methods shown above to separate stdout and stderr for each script into separate files. I also skipped the echoes you had showing the progression of scripts being executed. If you want them, I assume you know where to add them. (If not; let me know.)

Last edited by Don Cragun; 04-13-2013 at 12:26 PM..
This User Gave Thanks to Don Cragun For This Post:
 

10 More Discussions You Might Find Interesting

1. Solaris

I want to run a script or command on other server

Hi all, I have done ssh-keygen to two servers in work place and given there entry for authorized_keys. I m able to ssh to other servers without asking password. But i face problem while trying to run a command or script on other server. It is throwing an Error. $ ssh... (4 Replies)
Discussion started by: naree
4 Replies

2. Shell Programming and Scripting

Why Does Command Run From Prompt But Not From Script?

I hope someone can shed any light on this mystery. I am trying to run the following command: su userID -c remsh server -l userid -n "awk -F^ '\$4 == \"SMITH\"' /tmp/infromational/version74b/LIVE/TEMPORARY/ABCfiles/HLC_Database_File.bat|head -1" > /tmp/variant/45BV32/var/store13.logfnd I... (15 Replies)
Discussion started by: Korn0474
15 Replies

3. Shell Programming and Scripting

Need help! command working ok when executed in command line, but fails when run inside a script!

Hi everyone, when executing this command in unix: echo "WM7 Fatal Alerts:", $(cat query1.txt) > a.csvIt works fine, but running this command in a shell script gives an error saying that there's a syntax error. here is content of my script: tdbsrvr$ vi hc.sh "hc.sh" 22 lines, 509... (4 Replies)
Discussion started by: 4dirk1
4 Replies

4. Shell Programming and Scripting

Getting script to run after ftp command

Hi I, essentially have two parts in my script. The first ftp's to server S10 and retrieves a batch of files. The second part does the crunching and arranging, They both work independently but when run all in sam script I cannoy get 2nd part to run, i.e. the cat, cut & sed. I think it may be... (10 Replies)
Discussion started by: rob171171
10 Replies

5. UNIX for Dummies Questions & Answers

Script to run a command in a new terminal

Hey, I am trying to write a script that will open all of my session windows, and then secure shell into the appropriate server in the new windows. Seems simple, but I cant get it to work! Please help! :confused: (1 Reply)
Discussion started by: sojo1024
1 Replies

6. Shell Programming and Scripting

script will not run cp command

Hi, Not sure what the issue is here, but when i run the script. A simple copy command, it does not find the cp command ? See scrpt below : #!/bin/sh set -x ############################################# # Backup Processes #... (4 Replies)
Discussion started by: venhart
4 Replies

7. Shell Programming and Scripting

Run command in background thru script

Dear All, Writing a script in which I want to run a command in background and keep it running even script is finished. I have tried like below, `truss -p <pid> >> & /tmp/log &` But doesnt work.. script goes running and nothing in log file. (7 Replies)
Discussion started by: Deei
7 Replies

8. Shell Programming and Scripting

run command in a script shell

Hello, Please i'd like to run command in a script shell , how can i do ? here my commands : cd blcr-build // run command in this rep sudo insmod ./blcr_imports/kbuild/blcr_imports.ko //root sudo insmod ./cr_module/kbuild/blcr.ko //root Thank you. (1 Reply)
Discussion started by: chercheur857
1 Replies

9. Shell Programming and Scripting

Script for telnet and run one command kill it and run another command using while loop

( sleep 3 echo ${LOGIN} sleep 2 echo ${PSWD} sleep 2 while read line do echo "$line" PID=$? sleep 2 kill -9 $PID done < temp sleep 5 echo "exit" ) | telnet ${HOST} while is executing only command and exits. (5 Replies)
Discussion started by: sooda
5 Replies

10. Shell Programming and Scripting

Run script like command

hello i have write a script which can create username + password #!/bin/bash # Script to add a user to Linux system if ; then read -p "Enter username : " username read -s -p "Enter password : " password egrep "^$username" /etc/passwd >/dev/null if ; then... (3 Replies)
Discussion started by: nimafire
3 Replies
rancid-run(1)						      General Commands Manual						     rancid-run(1)

NAME
rancid-run - run rancid for each of the groups SYNOPSIS
rancid-run [-V] [-f rancid.conf] [-f rancid.conf] [-m mail_rcpt] [-r device_name] [group [group ...]] DESCRIPTION
rancid-run is a sh(1) script to run rancid(1) for a set of rancid group(s). rancid-run reads rancid.conf(5) to configure itself, then uses control_rancid(1) to run rancid(1) for each rancid group. The set of rancid groups can either be provided as command-line arguments or via the LIST_OF_GROUPS variable in rancid.conf(5), if the group argument is omitted. A lock file is maintained per-group to prevent simultaneous runs for a given group by rancid-run(1). The lock file will be named .<group>.run.lock and will be located in /var/lib/rancid. A log file is produced under $LOGDIR/logs for each rancid group processed. The file name will be <group>.YYYYMMDD.HHMMSS (year month day . hour minute second). rancid-run is normally used to run rancid from cron(8). For example: 0 * * * * /usr/local/rancid/bin/rancid-run The command-line options are as follows: -V Prints package name and version strings. -f rancid.conf Specify an alternate configuration file. -m mail_rcpt Specify the recipient of diff mail, which is normally rancid-<group>. The argument may be a single address, multiple comma separated addresses, or -m may be specified multiple times. -r device_name Run rancid for a single device, device_name. device_name should be name, as it appears in a group's router.db. The device must be marked "up". If a group is not specified on the command-line, rancid will be run against any group in which the device_name appears. The -r option alters the subject line of the diff mail. It will begin with <group name>/<device name> rather than just the group name alone. ENVIRONMENT
rancid-run utilizes the following environment variables from rancid.conf(5). BASEDIR Location of group directories, etc. This is set to the "localstatedir" by the configure script at installation time. LIST_OF_GROUPS List of rancid groups to collect. PATH Search path for utilities. TMPDIR Directory to hold temporary files. ERRORS
If rancid fails to run or collect a device's configuration, the particular group's log file (mentioned above) should be consulted. Any errors produced by the revision control system (CVS or Subversion) or any of the rancid scripts should be included there, whether they be a botched cvs tree, login authentication failure, rancid configuration error, etc. If the log file produces no clues, the next debugging step should be run the commands manually. For example, can the user who runs rancid login to the device with 'clogin hostname', and so on. FILES
$BASEDIR/etc/rancid.conf rancid-run configuration file. SEE ALSO
control_rancid(1), rancid.conf(5), router.db(5) 5 October 2006 rancid-run(1)
All times are GMT -4. The time now is 05:31 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy