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.