Rumah >Tutorial sistem >LINUX >Trik baris arahan Linux: penjelasan terperinci tentang perintah Cut untuk memproses teks dengan mudah!

Trik baris arahan Linux: penjelasan terperinci tentang perintah Cut untuk memproses teks dengan mudah!

王林
王林ke hadapan
2024-02-13 20:00:201056semak imbas

Trik baris arahan Linux: penjelasan terperinci tentang perintah Cut untuk memproses teks dengan mudah!

Dalam baris arahan Linux, selalunya diperlukan untuk memintas dan memisahkan kandungan teks. Perintah Cut adalah salah satu alat yang sangat praktikal. Ia boleh mengekstrak data daripada baris, aksara dan medan teks dan mengeluarkan hasilnya kepada peranti output standard. Dalam tutorial hari ini, kami akan memperkenalkan penggunaan perintah Cut secara terperinci melalui beberapa contoh.

pilihan untuk perintah potong

Potong sintaks asas:

cut OPTION... [FILE]...

Pilihan:

  • -f: Tentukan medan yang hendak diekstrak. Perintah potong menggunakan "TAB" sebagai pemisah medan lalai.
  • -d: "TAB" ialah pembatas lalai, gunakan pilihan ini untuk menukar kepada pembatas lain.
  • –complement : Pilihan ini digunakan untuk mengecualikan medan yang ditentukan.
  • –output-delimiter: Tukar pembatas kandungan output.

Cara membahagikan

Pilihan yang paling biasa digunakan untuk potongan ialah gabungan -d dan -f. Ia pada asasnya mengekstrak kandungan berdasarkan pembatas tertentu dan medan tersenarai.

Kod di bawah hanya menggunakan pembatas: mencetak medan pertama setiap baris dalam fail /etc/passwd.

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

Kod berikut mengekstrak medan pertama dan keenam daripada fail /etc/passwd:

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

Untuk memaparkan julat medan, nyatakan medan mula dan medan tamat dipisahkan oleh - seperti yang ditunjukkan di bawah:

[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

Kecualikan medan yang ditentukan

Dalam kod di bawah, cetak semua medan kecuali medan kedua dalam fail /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

Cara menentukan pembatas untuk kandungan output

Untuk menentukan pembatas keluaran, gunakan pilihan --output-delimiter. Pembatas input ditentukan oleh pilihan -d, dan secara lalai pembatas output adalah sama dengan pembatas input.
Mari kita lihat rupanya tanpa menggunakan pilihan –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
…

Sekarang gunakan pilihan --output-delimiter, dan pembatas output dipisahkan oleh ruang ' ', lihat rupanya:

[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

Ringkasnya, arahan Cut adalah arahan yang sangat penting dalam Linux dan boleh memproses fail teks dengan mudah. Melalui pengenalan artikel ini, saya percaya bahawa semua orang telah menguasai penggunaan asas dan teknik biasa perintah Cut, dan boleh menggunakannya secara fleksibel pada pelbagai situasi. Saya berharap semua orang dapat memperdalam pemahaman mereka tentang perintah Cut dan meningkatkan kecekapan kerja.

Atas ialah kandungan terperinci Trik baris arahan Linux: penjelasan terperinci tentang perintah Cut untuk memproses teks dengan mudah!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:lxlinux.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam