Fish Shell:
การทำงานกับ JSON

วิธีการ:

Fish Shell เองไม่มีเครื่องมือในตัวสำหรับการแยกวิเคราะห์และสร้าง JSON อย่างไรก็ตาม มันสามารถรวมง่ายๆ กับเครื่องมือของบุคคลที่สามเช่น jq สำหรับการประมวลผล JSON jq เป็นเครื่องมือประมวลผล JSON ที่มีประสิทธิภาพและหลากหลายซึ่งช่วยให้คุณสามารถตัด กรอง จับคู่ และแปลงข้อมูลที่มีโครงสร้างด้วยภาษาที่ง่ายและมีอรรถประโยชน์

การแยกวิเคราะห์ JSON ด้วย jq

เพื่อแยกวิเคราะห์ไฟล์ JSON และสกัดข้อมูลโดยใช้ jq:

# สมมติว่าคุณมีไฟล์ JSON ชื่อ 'data.json' ด้วยเนื้อหา: {"name":"Fish Shell","version":"3.4.0"}
cat data.json | jq '.name'
# ตัวอย่างผลลัพธ์
"Fish Shell"

การสร้าง JSON ด้วย jq

การสร้างเนื้อหา JSON จากตัวแปรหรือผลลัพธ์ของ shell:

# สร้างวัตถุ JSON จากตัวแปร
set name "Fish Shell"
set version "3.4.0"
jq -n --arg name "$name" --arg version "$version" '{name: $name, version: $version}'
# ตัวอย่างผลลัพธ์
{
  "name": "Fish Shell",
  "version": "3.4.0"
}

การกรองคอลเลกชัน JSON

สมมติว่าเรามีอาร์เรย์ของวัตถุในไฟล์ชื่อ versions.json:

[
  {"version": "3.1.2", "stable": true},
  {"version": "3.2.0", "stable": false},
  {"version": "3.4.0", "stable": true}
]

เพื่อกรองอาร์เรย์นี้สำหรับเฉพาะเวอร์ชันที่เสถียร:

cat versions.json | jq '.[] | select(.stable == true) | .version'
# ตัวอย่างผลลัพธ์
"3.1.2"
"3.4.0"

ตัวอย่างที่ให้ไว้สาธิตถึงประโยชน์ของการรวม jq กับ Fish Shell สำหรับการดำเนินการกับ JSON การใช้เครื่องมือเช่นนี้ช่วยให้ประสบการณ์ shell มีประสิทธิภาพมากขึ้น ทำให้เป็นสภาพแวดล้อมที่น่าทึ่งสำหรับการจัดการกับรูปแบบข้อมูลสมัยใหม่