Menggunakan senarai
- 4409
- 579
- Noah Torp
Sekiranya anda berfikir bahawa anda boleh melakukan pentadbiran sistem linux tanpa potong perintah, maka anda betul -betul betul. Walau bagaimanapun, menguasai alat baris perintah yang agak mudah ini akan memberi anda kelebihan yang besar ketika datang ke kecekapan kerja anda pada tahap pengguna serta tahap pentadbiran. Hanya meletakkan, potong Perintah adalah salah satu daripada banyak alat baris perintah penapisan teks yang ditawarkan oleh sistem operasi Linux. Ia menapis stdin standard dari arahan atau fail input yang lain dan menghantar output yang ditapis ke stdout.
Pilihan yang sering digunakan
Tanpa terlalu banyak ceramah mari kita mulakan dengan memperkenalkan utama dan yang paling biasa digunakan potong Pilihan baris arahan.
- -b, -bytes = senarai
Memotong fail input menggunakan senarai bait yang ditentukan oleh pilihan ini - -C, -Characters = Senarai
Memotong fail input menggunakan senarai aksara yang ditentukan oleh pilihan ini - -f, -fields = senarai
Memotong fail input menggunakan senarai medan. Medan lalai yang akan digunakan. Tingkah laku lalai boleh ditimpa dengan menggunakan pilihan -d pilihan. - -d, -delimiter = pemisah
Menentukan pembatas dengan digunakan sebagai medan. Seperti yang disebutkan medan lalai sebelum ini adalah tab dan pilihan ini menimpa tingkah laku lalai ini.
Menggunakan senarai
Senarai dalam kes ini boleh terdiri daripada satu atau julat bait, aksara atau medan. Contohnya untuk memaparkan bait kedua hanya senarai akan merangkumi satu nombor 2 .
Oleh itu:
- 2 hanya akan memaparkan bait kedua, watak atau medan yang dikira dari 1
- 2-5 akan memaparkan semua bait, aksara atau medan bermula dari kedua dan menamatkan ke-5
- -3 akan memaparkan semua bait, aksara atau medan sebelum ke -4
- 5- Akan menghasilkan semua bait, aksara atau medan bermula dengan ke-5
- 1,3,6 akan memaparkan hanya 1, ke -3 dan ke -6 byte, watak atau medan
- 1,3- Memaparkan 1 dan semua bait, aksara atau medan bermula dengan ke-3
Mari lihat bagaimana ini berfungsi dalam amalan.
Dipotong oleh watak
Dalam contoh berikut agak jelas. Kami menggunakan pilihan Cut's -c untuk mencetak hanya pelbagai watak tertentu dari CUT.fail txt.
echo cut-command> potong.TXT $ CUT -C 2 CUT.txt u $ cut -c -3 potong.TXT CUT $ CUT -C 2-5 CUT.TXT UT-C $ CUT -C 5- CUT.perintah txt
Dipotong oleh byte
Prinsip di belakang -b (oleh byte) adalah serupa dengan yang diterangkan sebelumnya. Kami tahu bahawa satu watak mempunyai saiz 1 byte dan oleh itu hasil selepas melaksanakan arahan sebelumnya dengan pilihan -b akan sama persis:
$ potong -b 2 potong.txt u $ cut -b -3 potong.TXT CUT $ CUT -B 2-5 CUT.TXT UT-C $ CUT -B 5- CUT.perintah txt
Potongan.TXT adalah fail teks ASCII yang mudah. Perbezaan hanya datang apabila menggunakan fail pengekodan berbilang bait sebagai teks unicode UTF-8 . Sebagai contoh:
$ echo ľuboš> potong.TXT $ CUT FILE.TXT CUT.TXT: UTF-8 UNICODE TEXT $ CUT -B 1-3 CUT.TXT ľU $ CUT -C 1-3 CUT.txt ľub
Dipotong mengikut medan
Seperti yang dinyatakan sebelum ini, medan lalai yang digunakan oleh cut Command adalah tab. Contohnya, mari buat fail di mana tab pemisah biasa adalah tab.
Petunjuk: Sekiranya anda akan bertarung untuk memasukkan tab pada baris arahan, gunakan ^v (ctrl + v) sebelum anda memukul tab
$ echo "1 2 3"> potong.txt $ echo "4 5 6" >> potong.TXT $ CAT CUT.TXT 1 2 3 4 5 6 $ CUT -F2- CUT.TXT 2 3 5 6
Contoh di atas dicetak hanya lajur ke -2 dan ke -3 kerana pembatas biasa adalah tab dan tab digunakan dengan dipotong sebagai medan lalai. Untuk memastikan bahawa anda menggunakan tab dan bukannya menggunakan perintah OD ruang:
$ echo "1 2"> tab.TXT $ echo "1 2"> ruang.TX $ OD -A Tab.TXT 0000000 1 HT 2 NL 0000004 $ OD -A ruang.TXT 0000000 1 SP SP SP SP SP SP SP 2 NL 0000013
Sekiranya kita perlu mengatasi tingkah laku lalai dan arahan arahan potong untuk menggunakan pematuhan biasa yang berbeza, pilihan -d menjadi sangat berguna.
$ echo 1-2-3-4> potong.txt $ echo 5-6-7-8 >> potong.TXT $ CAT CUT.TXT 1-2-3-4 5-6-7-8 $ CUT -D--F-2,4 CUT.TXT 1-2-4 5-6-8
Contoh klasical di mana kita perlu menggunakan pilihan -d adalah untuk mengekstrak senarai pengguna pada sistem semasa dari /etc /passwd fail:
$ cut -d: -f 1 /etc /passwd root daemon bin sys sync games man lp mail news proxy proxy www -data ..
Perlu disebutkan bahawa untuk mendapatkan output seragam pemecah umum mesti disatukan di setiap baris input. Sebagai contoh, sukar untuk menggunakan ruang sebagai pembatas umum contoh berikut:
$ Cat Cut.TXT CUT COMMAND W COMMAND AWK COMMAND WC COMMAND $ CUT -D "" -F2 CUT.perintah perintah txt
Dalam kes ini, lebih mudah menggunakan perintah AWK atau menggunakan perintah sed untuk menggantikan beberapa ruang dengan terlebih dahulu dengan pembatas tunggal seperti ",":
$ sed's/\ s \+/,/'CUT.txt | CUT -D, -f2 arahan arahan arahan perintah $ awk 'cetak $ 2; 'potong.Perintah Perintah Perintah Perintah TXT
Tidak termasuk data menggunakan pelengkap
COMMAND COMMAND membolehkan anda secara selektif memasukkan data yang dikehendaki dalam outputnya. Sekiranya anda perlu memilih data untuk mengecualikan dari output, pilihan pelengkap mungkin menjadi sangat berguna.
Sebagai contoh:
$ echo 12345678> potong.TXT $ CAT CUT.TXT 12345678 $ CUT -pelengkap -c -2,4,6- CUT.TXT 35
Contoh
Pembelajaran Linux Cut Command dengan contoh | |
---|---|
Sintaks perintah linux | Penerangan arahan Linux |
percuma | grep mem | sed's/\ s \+/,/g '| potong -d, -f2 | Paparkan jumlah memori pada sistem semasa |
CAT /PROC /CPUINFO | Grep "Nama" | CUT -D: -F2 | uniq | Ambil jenis CPU |
wget -q -o x http: // ipchicken.com/ grep '^ \ 8 \ [0-9]' x | sed's/\ s \+/,/g '| potong -d, -f2 | Dapatkan alamat IP luaran saya |
potong -d: -f 1 /etc /passwd | Senarai Ekstrak Pengguna pada Sistem Semasa |
ifconfig et0 | Grep Hwaddr | potong -d "" -f 11 | Dapatkan alamat MAC antara muka rangkaian saya |
Siapa | potong -d \ s -f1 | Senaraikan pengguna log masuk ke sistem semasa |
grep -w /etc /perkhidmatan | potong -f 1 | uniq | Perkhidmatan apa yang menggunakan port . |
Tutorial Linux Berkaitan:
- Perkara yang hendak dipasang di Ubuntu 20.04
- Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
- Pengenalan kepada Automasi, Alat dan Teknik Linux
- Perintah Linux: Top 20 Perintah Paling Penting yang Anda Perlu ..
- Perintah Linux Asas
- Perkara yang perlu dilakukan setelah memasang Ubuntu 22.04 Jur -ubur Jammy ..
- Pasang Arch Linux di Workstation VMware
- Ubuntu 20.04 Panduan
- Perkara yang perlu dipasang di Ubuntu 22.04
- Muat turun linux