Android

คำสั่ง Wc ใน linux (นับจำนวนบรรทัดคำและตัวอักษร)

A day with Scandale - Harmonie Collection - Spring / Summer 2013

A day with Scandale - Harmonie Collection - Spring / Summer 2013

สารบัญ:

Anonim

บนระบบปฏิบัติการ Linux และ Unix คำสั่ง wc อนุญาตให้คุณนับจำนวนบรรทัดคำตัวอักษรและไบต์ของแต่ละไฟล์หรืออินพุตมาตรฐานและพิมพ์ผลลัพธ์

ในบทช่วยสอนนี้เราจะแสดงวิธีใช้คำสั่ง wc ผ่านตัวอย่างที่เรียบง่ายและใช้งานได้จริง

วิธีใช้คำสั่ง wc

ไวยากรณ์สำหรับคำสั่ง wc เป็นดังนี้:

wc OPTION……

คำสั่ง wc สามารถยอมรับชื่อ FILE เป็นศูนย์หรือมากกว่า หากไม่ได้ระบุ FILE หรือเมื่อเป็น FILE - , wc จะอ่านอินพุตมาตรฐาน คำคือสตริงของอักขระคั่นด้วยช่องว่างแท็บหรือขึ้นบรรทัดใหม่

ในรูปแบบที่ง่ายที่สุดเมื่อใช้โดยไม่มีตัวเลือกใด ๆ คำสั่ง wc จะพิมพ์สี่คอลัมน์จำนวนบรรทัดคำนับไบต์และชื่อของไฟล์สำหรับแต่ละไฟล์ที่ส่งผ่านเป็นอาร์กิวเมนต์ เมื่อใช้อินพุตมาตรฐานคอลัมน์ที่สี่ (ชื่อไฟล์) จะไม่ปรากฏขึ้น

ตัวอย่างเช่นคำสั่งต่อไปนี้จะแสดงข้อมูลเกี่ยวกับไฟล์เสมือน /proc/cpuinfo :

wc /proc/cpuinfo

ผลลัพธ์จะมีลักษณะดังนี้:

448 3632 22226 /proc/cpuinfo

  • 448 คือจำนวนบรรทัด 3632 คือจำนวนคำ 22226 คือจำนวนตัวอักษร

เมื่อใช้อินพุตมาตรฐานชื่อไฟล์จะไม่แสดง:

wc < /proc/cpuinfo

448 3632 22226

หากต้องการแสดงข้อมูลเกี่ยวกับไฟล์มากกว่าหนึ่งไฟล์ให้ส่งชื่อไฟล์เป็นอาร์กิวเมนต์โดยคั่นด้วยช่องว่าง:

wc /proc/cpuinfo

คำสั่งจะให้ข้อมูลเกี่ยวกับแต่ละไฟล์และบรรทัดรวมถึงสถิติทั้งหมด:

448 3632 22226 /proc/cpuinfo 49 143 1363 /proc/meminfo 497 3775 23589 total

ตัวเลือกด้านล่างอนุญาตให้คุณเลือกจำนวนที่จะพิมพ์

  • -l , --lines - พิมพ์จำนวนบรรทัด -w , --words - พิมพ์จำนวนคำ -m , --chars - พิมพ์จำนวนตัวอักษร -c , --bytes - พิมพ์จำนวนไบต์ -L , --max-line-length - พิมพ์ความยาวของบรรทัดที่ยาวที่สุด

เมื่อใช้ตัวเลือกหลายตัวนับจะถูกพิมพ์ตามลำดับต่อไปนี้: ขึ้นบรรทัดใหม่คำตัวอักษรไบต์ความยาวบรรทัดสูงสุด

ตัวอย่างเช่นเพื่อแสดงเฉพาะจำนวนคำที่คุณจะใช้:

wc -w /proc/cpuinfo

3632 /proc/cpuinfo

นี่คืออีกตัวอย่างที่จะพิมพ์จำนวนบรรทัดและความยาวของบรรทัดที่ยาวที่สุด

wc -lL /proc/cpuinfo

448 792 /proc/cpuinfo

ตัวเลือก --files0-from=F อนุญาตให้ wc อ่านอินพุตจากไฟล์ที่ระบุโดยชื่อที่ยกเลิกด้วย NUL ในไฟล์ F ถ้า F คือ - อ่านชื่อจากอินพุตมาตรฐาน ตัวอย่างเช่นคุณสามารถค้นหาไฟล์โดยใช้คำสั่ง find และระบุไฟล์เหล่านั้นเป็นอินพุตสำหรับ wc :

find /etc -name 'host*' -printf0 | wc -l --files0-from=-

ผลลัพธ์จะแสดงจำนวนบรรทัดสำหรับไฟล์ทั้งหมดในไดเรกทอรี /etc ที่ชื่อขึ้นต้นด้วย“ host”:

4 /etc/host.conf 27 /etc/avahi/hosts 1 /etc/hostname 14 /etc/hosts 46 total

นับจำนวนบรรทัด

คำสั่ง wc ส่วนใหญ่จะใช้กับตัวเลือก -l เพื่อนับจำนวนบรรทัดในไฟล์ข้อความเท่านั้น ตัวอย่างเช่นหากต้องการนับจำนวนบรรทัดในไฟล์ /etc/passwd คุณจะต้องพิมพ์:

wc -l /etc/passwd

คอลัมน์แรกคือจำนวนบรรทัดและอีกคอลัมน์หนึ่งคือชื่อไฟล์:

44 /etc/passwd

นับจำนวนคำ

หากต้องการนับเฉพาะจำนวนคำในไฟล์ข้อความให้ใช้ wc -w ตามด้วยชื่อไฟล์ ตัวอย่างต่อไปนี้นับจำนวนคำในไฟล์ ~/Documents/file.txt :

wc -l /etc/passwd

จำนวนคำจะปรากฏในคอลัมน์แรก:

513 /home/linuxize/Documents/file.txt

ตัวอย่างคำสั่ง Wc

คำสั่ง wc สามารถใช้ร่วมกับคำสั่งอื่น ๆ ผ่านการไพพ์ นี่คือตัวอย่างเล็ก ๆ น้อย ๆ

การนับไฟล์ในไดเรกทอรีปัจจุบัน

คำสั่ง find ส่งรายการไฟล์ทั้งหมดในไดเร็กทอรีปัจจุบันที่มีชื่อไฟล์แต่ละไฟล์บนบรรทัดเดียวไปยังคำสั่ง wc ซึ่งนับจำนวนบรรทัดและพิมพ์ผลลัพธ์:

find. -type f | wc -l

นับจำนวนผู้ใช้

ในตัวอย่างด้านล่าง wc ใช้เพื่อนับจำนวนบรรทัดจากเอาต์พุตของคำสั่ง getent

getent passwd | wc -l

ข้อสรุป

คำสั่ง wc ย่อมาจาก "word word" และมีไวยากรณ์ที่ค่อนข้างง่าย อนุญาตให้คุณนับจำนวนบรรทัดคำไบต์และตัวอักษรในไฟล์ข้อความหนึ่งหรือหลายไฟล์

ห้องสุขา