≡ Menu

BASH Shell: How to run several commands in Sequence or all at once

A quick question:

How do I run several commands in Sequence or all at once?

If you need to run several commands chain them with a ; (semi colon). It is a control operator or metacharacter.
General Syntax:

Commands separated by a ; are executed sequentially; the shell waits for each command to terminate in turn. The return status is the exit status of the last command executed.
$ clear;date

Run command all at once

To run several commands all at once by putting an ampersand & at the end of the command line. For example start backup script:
# /root/ftpbackup.sh &

Now you don't have to wait finishing /root/ftpbackup.sh script.

Putting it all together

There might be thousands of *.bak file. You need to goto each directory and list all files in /tmp/list directory:
# for d in "/home/sales /home/dbs /data1"; do find $d -iname "*.bak" >> /tmp/list; done &

Share this on:

{ 5 comments… add one }

  • mike February 6, 2007, 8:05 pm

    Put commands on one line separated by ‘&&’ (no quotes), so if one command exits with exit status 1, then the remaining commands will not execute.

  • kiran May 28, 2013, 2:54 pm

    I have a shell script
    where I got 5 commands in each line. when I run the script I want that to be executed all the commands at same time. Not one after one.
    Is there any way ?


    • Viktor March 8, 2015, 10:53 am

      you could use :
      process1 &
      process2 &
      process3 &
      process4 &
      process5 &
      process6 &
      process7 &
      process8 &
      this would start 8 processess in paralell (in background)

  • ShavedApe June 3, 2013, 7:49 pm

    Anyone know how to do this in windows?

    • Matt June 21, 2013, 6:15 pm

      Double Ampersands.

      dir c:\ && dir d:\

Leave a Comment