changed file names and directories
All checks were successful
learn org at code.softwareshinobi.com/linux.softwareshinobi.com/pipeline/head This commit looks good
All checks were successful
learn org at code.softwareshinobi.com/linux.softwareshinobi.com/pipeline/head This commit looks good
This commit is contained in:
90
landing/docs/commands/.recycle/111-the-basename-command.md
Normal file
90
landing/docs/commands/.recycle/111-the-basename-command.md
Normal file
@@ -0,0 +1,90 @@
|
||||
|
||||
# The `basename` command
|
||||
|
||||
The `basename` is a command-line utility that strips directory from given file names. Optionally, it can also remove any trailing suffix. It is a simple command that accepts only a few options.
|
||||
|
||||
### Examples
|
||||
|
||||
The most basic example is to print the file name with the leading directories removed:
|
||||
|
||||
```bash
|
||||
basename /etc/bar/foo.txt
|
||||
```
|
||||
|
||||
The output will include the file name:
|
||||
|
||||
```bash
|
||||
foo.txt
|
||||
```
|
||||
|
||||
If you run basename on a path string that points to a directory, you will get the last segment of the path. In this example, /etc/bar is a directory.
|
||||
|
||||
```bash
|
||||
basename /etc/bar
|
||||
```
|
||||
|
||||
Output
|
||||
|
||||
```bash
|
||||
bar
|
||||
```
|
||||
|
||||
The basename command removes any trailing `/` characters:
|
||||
|
||||
```bash
|
||||
basename /etc/bar/foo.txt/
|
||||
```
|
||||
|
||||
Output
|
||||
|
||||
```bash
|
||||
foo.txt
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
1. By default, each output line ends in a newline character. To end the lines with NUL, use the -z (--zero) option.
|
||||
|
||||
```bash
|
||||
$ basename -z /etc/bar/foo.txt
|
||||
foo.txt$
|
||||
```
|
||||
|
||||
2. The `basename` command can accept multiple names as arguments. To do so, invoke the command with the `-a` (`--multiple`) option, followed by the list of files separated by space. For example, to get the file names of `/etc/bar/foo.txt` and `/etc/spam/eggs.docx` you would run:
|
||||
|
||||
```bash
|
||||
basename -a /etc/bar/foo.txt /etc/spam/eggs.docx
|
||||
```
|
||||
|
||||
```bash
|
||||
foo.txt
|
||||
eggs.docx
|
||||
```
|
||||
|
||||
### Syntax
|
||||
|
||||
The basename command supports two syntax formats:
|
||||
|
||||
```bash
|
||||
basename NAME [SUFFIX]
|
||||
basename OPTION... NAME...
|
||||
```
|
||||
|
||||
### Additional functionalities
|
||||
|
||||
**Removing a Trailing Suffix**: To remove any trailing suffix from the file name, pass the suffix as a second argument:
|
||||
|
||||
```bash
|
||||
basename /etc/hostname name
|
||||
host
|
||||
```
|
||||
|
||||
Generally, this feature is used to strip file extensions
|
||||
|
||||
### Help Command
|
||||
|
||||
Run the following command to view the complete guide to `basename` command.
|
||||
|
||||
```bash
|
||||
man basename
|
||||
```
|
||||
Reference in New Issue
Block a user