首頁 > 系統教程 > Linux > 主體

Linux命令列絕招:Cut命令詳解,輕鬆處理文字!

王林
發布: 2024-02-13 20:00:20
轉載
1046 人瀏覽過

Linux命令列絕招:Cut命令詳解,輕鬆處理文字!

在Linux命令列中,經常需要對文字內容進行截取和分割。而 Cut 指令就是其中的一種非常實用的工具。它可以從文字的行、字元和欄位中提取數據,並將結果輸出到標準輸出裝置。在今天的教學中,我們將透過一些實例來詳細介紹 Cut 指令的使用方法。

cut指令的選項

#Cut基本語法:

cut OPTION... [FILE]...
登入後複製

選項:

  • -f : 透過指定哪一個欄位進行提取。 cut指令使用“TAB”作為預設的欄位分隔符號。
  • -d : “TAB”是預設的分隔符,使用此選項可以變更為其他的分隔符。
  • –complement : 此選項用於排除所指定的欄位。
  • –output-delimiter : 更改輸出內容的分隔符號。

如何分割

#cut最常用的選項是-d和-f的組合。它基本上會根據特定的分隔符號和列出的欄位提取內容。

下面的程式碼只使用分隔符號:列印/etc/passwd檔案中每一行的第一個欄位。

[root@localhost ~]# cut -d ':' -f 1 /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
…
登入後複製

下面的程式碼從/etc/passwd檔案提取第一和第六個欄位:

[root@localhost ~]# grep '/bin/bash' /etc/passwd| cut -d ':' -f 1,6
root:/root
bob:/home/bob
user01:/home/user01
登入後複製

要顯示字段的範圍,請指定以-分隔的開始字段和結束字段,如下所示:

[root@localhost ~]# grep '/bin/bash' /etc/passwd|cut -d ':' -f 1-4,6,7
root:x:0:0:/root:/bin/bash
bob:x:1000:1001:/home/bob:/bin/bash
user01:x:1001:1002:/home/user01:/bin/bash
登入後複製

排除所指定的欄位

#在下面的程式碼中,列印所有字段,除了/etc/passwd檔案中的第二個字段:

[root@localhost ~]# grep '/bin/bash' /etc/passwd|cut -d ':' --complement -f 2
root:0:0:root:/root:/bin/bash
bob:1000:1001::/home/bob:/bin/bash
user01:1001:1002::/home/user01:/bin/bash
登入後複製

如何指定一個輸出內容的分隔符號

要指定輸出分隔符,請使用–output-delimiter選項。輸入分隔符號由-d選項指定,預設輸出分隔符號與輸入分隔符號相同。
先來看看沒有使用–output-delimiter選項,是什麼樣子的:

[root@localhost ~]# cut -d ':' -f1,7 /etc/passwd|sort
adm:/sbin/nologin
avahi:/sbin/nologin
bin:/sbin/nologin
bob:/bin/bash
chrony:/sbin/nologin
daemon:/sbin/nologin
dbus:/sbin/nologin
ftp:/sbin/nologin
games:/sbin/nologin
grafana:/sbin/nologin
halt:/sbin/halt
lp:/sbin/nologin
mail:/sbin/nologin
nfsnobody:/sbin/nologin
nobody:/sbin/nologin
ntp:/sbin/nologin
operator:/sbin/nologin
…
登入後複製

現在使用–output-delimiter選項,輸出分隔符號使用’ ‘空格分隔,看看是什麼樣子的:

[root@localhost ~]# cut -d ':' -f1,7 --output-delimiter=' ' /etc/passwd|sort
adm /sbin/nologin
avahi /sbin/nologin
bin /sbin/nologin
bob /bin/bash
chrony /sbin/nologin
daemon /sbin/nologin
dbus /sbin/nologin
ftp /sbin/nologin
games /sbin/nologin
grafana /sbin/nologin
halt /sbin/halt
lp /sbin/nologin
mail /sbin/nologin
nfsnobody /sbin/nologin
nobody /sbin/nologin
ntp /sbin/nologin
operator /sbin/nologin
登入後複製

總之,Cut 指令是 Linux 中非常重要的一個指令,可以輕鬆地處理文字檔。透過本文的介紹,相信大家已經掌握了 Cut 指令的基本使用方法和常用技巧,能夠彈性應用於各種情況。希望大家能夠加深對 Cut 指令的理解,提高工作效率。

以上是Linux命令列絕招:Cut命令詳解,輕鬆處理文字!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:lxlinux.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板