自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

干貨:Linux中使用 Basename 命令實(shí)例

系統(tǒng) Linux
basename是一個(gè)命令行中實(shí)用的小工具,可從給定的文件名中刪除目錄和后綴。

 [[373356]]

basename是一個(gè)命令行中實(shí)用的小工具,可從給定的文件名中刪除目錄和后綴。

系統(tǒng)環(huán)境

Centos7

如何使用basename命令

在Centos7系統(tǒng)中,已經(jīng)默認(rèn)安裝了basename命令了,該命令包含在coreutils安裝包里。

basename有兩種語法:

  1. basename NAME [SUFFIX] 
  2. basename OPTION... NAME... 

<以上代碼可復(fù)制粘貼,可往左滑>

basename最后一部分。也可以刪除任何結(jié)尾的后綴。這是一個(gè)簡單的命令,最基本的是去掉文件名前面的目錄并打印出來:

  1. [root@localhost ~]# basename /etc/yum.repos.d/CentOS-Base.repo  
  2. CentOS-Base.repo 

<以上代碼可復(fù)制粘貼,可往左滑>

basename命令默認(rèn)刪除所有結(jié)尾的/字符:

  1. [root@localhost ~]# basename /usr/local
  2. local 
  3. [root@localhost ~]# basename /usr/local 
  4. local 

<以上代碼可復(fù)制粘貼,可往左滑>

默認(rèn)情況下,每條輸出行以換行符(\n)結(jié)尾。要以NUL結(jié)尾,請(qǐng)使用-z(--zero)選項(xiàng)。

  1. [root@localhost ~]# basename -z /usr/local 
  2. local[root@localhost ~]# 

<以上代碼可復(fù)制粘貼,可往左滑>

basename接受多個(gè)文件

basename命令可以接受多個(gè)名稱作為參數(shù)??梢允褂?a(--multiple)選項(xiàng),然后使用空格分隔文件列表。例如,要獲取/etc/passwd和/etc/shadow的文件名,可以運(yùn)行:

  1. [root@localhost ~]# basename -a /etc/passwd /etc/shadow 
  2. passwd 
  3. shadow 

<以上代碼可復(fù)制粘貼,可往左滑>

刪除指定結(jié)尾的后綴

要從文件名中刪除任何結(jié)尾的后綴,請(qǐng)將后綴作為第二個(gè)參數(shù)傳遞:

  1. [root@localhost ~]# basename /etc/hostname name 
  2. host 
  3. 另一種方法: 
  4. [root@localhost ~]# basename -s name /etc/hostname  
  5. host 

<以上代碼可復(fù)制粘貼,可往左滑>

上面例子中,指定name為后綴,可以看到輸出結(jié)果中只顯示/后面和name前面的內(nèi)容了。

通常,此功能用于刪除文件的擴(kuò)展名:

  1. [root@localhost ~]# basename -s .conf  /etc/httpd/conf/httpd.conf 
  2. httpd 
  3. 或者 
  4. [root@localhost ~]# basename /etc/httpd/conf/httpd.conf .conf 
  5. httpd 

<以上代碼可復(fù)制粘貼,可往左滑>

下面例子,使用-a選項(xiàng)指定多個(gè)文件,-s選項(xiàng)指定后綴內(nèi)容:

  1. [root@localhost ~]# basename -a -s .conf /etc/sysctl.conf /etc/httpd/conf/httpd.conf  
  2. sysctl 
  3. httpd 

<以上代碼可復(fù)制粘貼,可往左滑>

刪除末尾后綴的另一種方法是使用-s(--suffix = SUFFIX)選項(xiàng)指定后綴。上面實(shí)例中以展現(xiàn)。

使用實(shí)例

以下示例顯示了如何在bash腳本中使用for循環(huán)、mv命令和basename命令,通過將當(dāng)前目錄下面的圖片文件,文件擴(kuò)展名從“ .jpg”替換為“ .jpeg”:

  1. [root@localhost test]# vim convert.sh  
  2.  
  3. #!/bin/bash 
  4. for file in *.jpg 
  5. do 
  6.   mv "$file" "$(basename $file .jpg).jpeg" 
  7. done 

<以上代碼可復(fù)制粘貼,可往左滑>圖片

總 結(jié)

basename命令的介紹到此為止,希望對(duì)你有幫助!

本文轉(zhuǎn)載自微信公眾號(hào)「 Linux就該這么學(xué)」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系 Linux就該這么學(xué)公眾號(hào)。

 

責(zé)任編輯:武曉燕 來源: Linux就該這么學(xué)
相關(guān)推薦

2020-12-07 06:25:14

Linux Truncate 命令

2010-06-23 09:34:15

basename命令

2023-08-12 15:05:26

Linuxcp 命令

2023-07-04 16:36:03

Linuxcd 命令

2023-07-23 19:26:18

Linuxcat 命令

2018-06-26 09:15:24

Linux命令history

2022-11-18 10:16:26

Linuxwc 命令

2018-05-16 10:32:06

Linux命令find

2022-10-25 09:07:28

Linuxxargs命令

2022-02-08 12:19:36

LinuxJQ命令

2010-06-22 13:23:18

Linux at命令詳

2023-01-11 08:59:33

Linuxtraceroute命令

2023-09-14 15:05:33

grep正則表達(dá)式

2023-01-13 23:21:29

netcat命令Linux

2018-08-21 09:00:30

Linuxtop命令

2021-01-13 09:40:26

Linuxexport命令

2012-05-08 11:11:43

Linuxcrontab命令

2009-06-30 16:55:19

2022-10-18 10:00:09

Linuxtcpdump命令

2022-02-15 07:26:31

Ncat工具Linux
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)