Bash:
การทำงานกับ CSV
วิธีทำ:
อ่านไฟล์ CSV ทีละบรรทัด
while IFS=, read -r column1 column2 column3
do
echo "Column 1: $column1, Column 2: $column2, Column 3: $column3"
done < sample.csv
ตัวอย่างผลลัพธ์:
Column 1: id, Column 2: name, Column 3: email
...
กรองแถว CSV ตามเงื่อนไข
โดยการใช้ awk
, คุณสามารถกรองแถวได้อย่างง่ายดาย เช่น เพื่อหาแถวที่คอลัมน์ที่สองเท่ากับ “Alice”:
awk -F, '$2 == "Alice" { print $0 }' sample.csv
แก้ไขค่าของคอลัมน์
เพื่อเปลี่ยนคอลัมน์ที่สองเป็นตัวพิมพ์ใหญ่:
awk -F, 'BEGIN {OFS=",";} { $2 = toupper($2); print $0; }' sample.csv
เรียงลำดับไฟล์ CSV ตามคอลัมน์
คุณสามารถเรียงลำดับไฟล์ CSV ตามคอลัมน์ที่สาม (ตามตัวเลข):
sort -t, -k3,3n sample.csv
ใช้ csvkit
สำหรับงานที่ซับซ้อนกว่า
csvkit
เป็นชุดเครื่องมือที่ใช้แบบ command-line ในการแปลงไปและทำงานกับ CSV สามารถติดตั้งได้ผ่าน pip
เพื่อแปลงไฟล์ JSON เป็น CSV:
in2csv data.json > data.csv
เพื่อค้นไฟล์ CSV โดยใช้ SQL:
csvsql --query "SELECT name FROM sample WHERE id = 10" sample.csv
หมายเหตุ: การติดตั้ง csvkit
ต้องใช้ Python และสามารถทำได้โดยการใช้ pip install csvkit
.