Fish Shell:
การทำงานกับ CSV
วิธีการ:
โดยตัวมันเอง, Fish Shell ไม่มีฟังก์ชันที่ออกแบบมาโดยเฉพาะสำหรับการจัดการ CSV อย่างไรก็ตาม, คุณสามารถใช้ประโยชน์จากยูทิลิตี Unix เช่น awk, sed, และ cut สำหรับการดำเนินการพื้นฐาน หรือใช้เครื่องมือที่เชี่ยวชาญเช่น csvkit สำหรับงานที่ซับซ้อนมากขึ้น
การอ่านไฟล์ CSV และการพิมพ์คอลัมน์แรก:
การใช้ cut เพื่อแยกคอลัมน์แรก:
cut -d ',' -f1 data.csvตัวอย่างผลลัพธ์:
Name
Alice
Bobการกรองแถว CSV ตามค่าคอลัมน์:
การใช้ awk เพื่อค้นหาแถวที่คอลัมน์ที่สองตรงกับ “42”:
awk -F, '$2 == "42" { print $0 }' data.csvตัวอย่างผลลัพธ์:
Bob,42,Londonการแก้ไขไฟล์ CSV (เช่น, การเพิ่มคอลัมน์):
การใช้ awk เพื่อเพิ่มคอลัมน์ด้วยค่าแบบคงที่ “NewColumn”:
awk -F, 'BEGIN {OFS=","} {print $0,"NewColumn"}' data.csv > modified.csvตัวอย่างผลลัพธ์ใน modified.csv:
Name,Age,City,NewColumn
Alice,30,New York,NewColumn
Bob,42,London,NewColumnการใช้ csvkit สำหรับการดำเนินการที่ซับซ้อนกว่า:
ก่อนอื่น, ตรวจสอบว่าคุณมี csvkit ติดตั้งอยู่แล้วหรือไม่ ถ้ายังไม่ได้ติดตั้ง, ติดตั้งผ่าน pip: pip install csvkit.
การแปลงไฟล์ CSV เป็น JSON:
csvjson data.csv > data.jsonตัวอย่างผลลัพธ์ data.json:
[{"Name":"Alice","Age":"30","City":"New York"},{"Name":"Bob","Age":"42","City":"London"}]การกรองด้วย csvgrep ของ csvkit:
csvgrep -c 2 -m 42 data.csvคำสั่งนี้ทำภารกิจการกรองโดยใช้ csvkit, โดยเน้นคอลัมน์ที่ 2 สำหรับค่า “42”.
สรุปแล้ว, แม้ว่า Fish Shell เองอาจไม่มีความสามารถโดยตรงในการจัดการ CSV, แต่การรวมกันอย่างไม่มีรอยต่อกับยูทิลิตี Unix และการมีเครื่องมือเช่น csvkit เป็นตัวเลือกที่มีประสิทธิภาพสำหรับการทำงานกับไฟล์ CSV.