Returns the base file name of a string parameter.
basename String [ Suffix ]
The basename command reads the String parameter, deletes any prefix that ends with a / (slash) and any specified Suffix parameter, and writes the remaining base file name to standard output. The basename command applies the following rules in creating the base file name:
K > basename /u/dee/desktop/cns.boo cns.boo
results
in: cns.boo
If a Suffix parameter
is specified and is not identical to all the characters in the string
but is identical to a suffix in the string, the specified suffix is
removed. For example, entering: K > basename /u/dee/desktop/cns.boo .boo
results
in: cns
Failure to find
the specified suffix within a string is not considered an error.The basename and dirname commands are generally used inside command substitutions within a shell script to specify an output file name that is some variation of a specified input file name.
This command returns the following exit values:
Item | Description |
---|---|
0 | Successful completion. |
>0 | An error occurred. |
basename $WORKFILE
The
command displays the base name of the value assigned to the shell
variable WORKFILE. If the value of the WORKFILE variable
is the /home/jim/program.c file, then the command displays program.c.OFILE=`basename $1 .c`.o
This
command assigns to the OFILE file the value of the first
positional parameter ($1), but with its .c suffix
changed to .o. If $1 is the /home/jim/program.c file, OFILE becomes program.o.
Because program.o is only a base file name, it identifies
a file in the current directory.Note: The ` (grave accent) specifies command substitution.
Item | Description |
---|---|
/usr/bin/basename | Contains the basename command. |