0% found this document useful (0 votes)
43 views2 pages

Shift Command

The shift command in Linux moves command line arguments to the left by a specified number of positions, removing the first argument. It is useful for parsing command line arguments sequentially by shifting arguments that have already been used. The command takes an optional integer argument to specify the number of positions to shift, defaulting to 1 if no argument is provided.

Uploaded by

chris
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views2 pages

Shift Command

The shift command in Linux moves command line arguments to the left by a specified number of positions, removing the first argument. It is useful for parsing command line arguments sequentially by shifting arguments that have already been used. The command takes an optional integer argument to specify the number of positions to shift, defaulting to 1 if no argument is provided.

Uploaded by

chris
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Shift command in Linux

Shift is a built-in command in bash which after getting executed, shifts/move the
command line arguments to one position left.
The first argument is lost after using shift command.
This command takes only one integer as an argument.
This command is useful when you want to get rid of the command line arguments
which are not needed after parsing them.
Syntax:
shift n
Here, n is the number of positions by which you want to shift command-line
arguments to the left if you do not specify, the default value of n is assumed to be 1 i.e
shift works the same as shift 1.
Example: Let’s create a shell script file named as sampleshift.sh as follows. The total
number of command-line arguments is represented by $#. Use the following command
to create the desired shell script file

vi sampleshift.sh
Now paste the following code:
#!/bin/bash

# total number of command-line arguments


echo "Total arguments passed are: $#"

# $* is used to show the command line arguments


echo "The arguments are: $*"

echo "The First Argument is: $1"


shift 2

echo "The First Argument After Shift 2 is: $1"


shift

echo "The First Argument After Shift is: $1"


Now to execute the file, use the following command on Linux terminal
sh sampleshift.sh G1 G2 G3 G4
Here, we are passing 4 command-line arguments named G1, G2, G3, and G4. Below
is the screenshot of the output of using shift command:

You might also like