MAN Solaris - shift (1)

advertisement


NAME

shift - shell built-in function to traverse either a shell’s argument list or a list of field-separated words

CONTENTS

Synopsis
Description
Attributes
See Also

SYNOPSIS

    sh

shift [n]

    csh

shift [variable]

    ksh

*shift [n]

    ksh

+shift [n]

advertisements

advertisements


DESCRIPTION

    sh

The positional parameters from $n+1 ... are renamed $1 ... . If n is not specified, it is assumed to be 1.

    csh

The components of argv, or variable, if supplied, are shifted to the left, discarding the first component. It is an error for the variable not to be set or to have a null value.

    ksh

The positional parameters from $n+1 $n+1 ... are renamed $1 ..., default n is 1. The parameter n can be any arithmetic expression that evaluates to a non-negative number less than or equal to $#.

On this manual page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:

ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways: -->
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a variable assignment. This means that tilde substitution is performed after the = sign and word splitting and file name generation are not performed.

    ksh93

shift is a shell special built-in that shifts the positional parameters to the left by the number of places defined by n, or 1 if n is omitted. The number of positional parameters remaining is reduced by the number of places that are shifted.

If n is specified, it is evaluated as an arithmetic expression to determine the number of places to shift. It is an error to shift more than the number of positional parameters or a negative number of places.

The following exit values are returned by shift in ksh93:

0

Successful completion. The positional parameters were successfully shifted.

>0

An error occurred.

On this manual page, ksh93(1) commands that are preceded by one or two + are treated specially in the following ways:

ksh93(1) commands that are preceded by one or two + are treated specially in the following ways: -->
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. They are not valid function names.
5. Words, following a command preceded by ++ that are in the format of a variable assignment, are expanded with the same rules as a variable assignment. This means that tilde substitution is performed after the = sign and field splitting and file name generation are not performed.

ATTRIBUTES

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE
AvailabilitySUNWcsu

SEE ALSO

csh(1), ksh(1), ksh93(1), sh(1), attributes(5)

Jump to page    or go to Top of page |  Section 1 |  Main Solaris Index.


SunOS 5.11 shift (1) 20 Nov 2007
Generated by Open Solaris Forum from /usr/share/man/man1/shift.1 using man macros with tbl support.