Jadual Kandungan
Cara memasang arahan JQ" >Cara memasang arahan JQ
Bahasa" >Bahasa
Cara menggunakan arahan JQ untuk menyusun data JSON" >Cara menggunakan arahan JQ untuk menyusun data JSON
Cara mengakses hartanah menggunakan arahan JQ" >Cara mengakses hartanah menggunakan arahan JQ
Bagaimana untuk mengakses item tatasusunan menggunakan arahan JQ" >Bagaimana untuk mengakses item tatasusunan menggunakan arahan JQ
总 结" >总 结
Rumah Tutorial sistem LINUX Contoh penggunaan arahan JQ dalam Linux

Contoh penggunaan arahan JQ dalam Linux

Feb 10, 2024 pm 09:12 PM
linux tutorial linux sistem linux arahan linux skrip shell Bermula dengan linux pembelajaran linux

JSON ialah format perwakilan data yang digunakan untuk menyimpan dan memindahkan data antara lapisan aplikasi yang berbeza; ia menyimpan data dalam pasangan kunci:nilai. Dalam artikel ini, kita akan belajar menggunakan arahan JQ untuk memanipulasi dan memproses data JSON dalam shell.

Cara memasang arahan JQ

Gunakan arahan berikut untuk memasang jq pada Centos8:

[root@localhost ~]# dnf -y install jq
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

Bahasa

Sekarang kita boleh mula menggunakan arahan JQ kerana ia telah berjaya dipasang pada sistem kita, tetapi pertama sekali, mari kita lihat sintaks arahan JQ:

jq [options]  [file...]

jq [options] --args  [strings...]

jq [options] --jsonargs  [JSON_TEXTS...]
Salin selepas log masuk

Arahan JQ boleh digunakan dalam pelbagai cara; ia boleh digunakan secara langsung pada fail JSON atau digabungkan dengan beberapa perintah lain untuk mentafsir data JSON. Perintah JQ boleh digunakan dengan penapis yang berbeza seperti penapis ".", "|", "," atau ".[]" untuk menyusun data JSON.

Arahan JQ juga mengambil pilihan berbeza sebagai parameter seperti –tab, –stream, –indent n, –unbuffered dan pilihan direktori -L. Sintaks arahan JQ mungkin kelihatan rumit pada mulanya, tetapi anda akan terbiasa dengannya selepas membaca keseluruhan artikel.

Cara menggunakan arahan JQ untuk menyusun data JSON

Ciri penapis arahan JQ yang paling mudah dan paling biasa digunakan. Ia digunakan untuk menyusun dan mencantikkan data JSON apabila mencetaknya ke output standard.

Dalam contoh ini, kami mempunyai fail JSON yang dipanggil employee.json dan kami perlu mengeluarkan data kepada output standard:

{"workers":{"name": "John Brooks","id": "003"}}
Salin selepas log masuk

Kita boleh menggunakan arahan kucing untuk memaparkan data:

[root@localhost ~]# cat employee.json 
{"workers":{"name": "John Brooks","id": "003"}}
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

Data yang dicetak ke output standard menggunakan arahan kucing tidak teratur dan mengelirukan. Kita boleh menggunakan arahan JQ dan "." untuk menyusun data ini, dan menggunakan . untuk menapis:

[root@localhost ~]# jq '.' employee.json 
{
  "workers": {
    "name": "John Brooks",
    "id": "003"
  }
}
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

Kini data lebih teratur, berwarna-warni dan lebih mudah difahami. Penapis ini amat diperlukan apabila mengakses data daripada API data yang disimpan dalam API boleh menjadi sangat tidak teratur dan mengelirukan.

Cara mengakses hartanah menggunakan arahan JQ

.字段Penapis dan arahan JQ boleh digunakan untuk mengakses sifat objek dalam cangkerang.

Jika kita hanya mahu mengakses satu hartanah dan mencetaknya ke output standard, maka kita boleh menggunakan operator .字段. Sebagai contoh, untuk mengakses sifat pekerja kita boleh menggunakan arahan berikut:

[root@localhost ~]# jq '.workers' employee.json 
{
  "name": "John Brooks",
  "id": "003"
}
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

Kami juga boleh mengakses item yang terdapat dalam hartanah menggunakan pengendali .字段. Untuk mengakses item nama dalam atribut pekerja kami akan menggunakan:

[root@localhost ~]# jq '.workers.name' employee.json 
"John Brooks"
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

Bagaimana untuk mengakses item tatasusunan menggunakan arahan JQ

Kami juga boleh mengakses dan mengeluarkan elemen yang terdapat dalam tatasusunan dalam fail JSON menggunakan operator .[]. Untuk contoh ini, kami akan mengubah suai fail JSON kami dan menambah yang berikut:

[{"name": "John Brooks","id": "003"},{"name": "Randy Park","id": "053"},{"name": "Todd Gray","id": "009"}]
Salin selepas log masuk

Semak fail employee.json:

[root@localhost ~]# cat employee.json 
[{"name": "John Brooks","id": "003"},{"name": "Randy Park","id": "053"},{"name": "Todd Gray","id": "009"}]
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

要输出 JSON 文件中存在的所有数组,我们将运行以下命令:

[root@localhost ~]# jq '.[]' employee.json 
{
  "name": "John Brooks",
  "id": "003"
}
{
  "name": "Randy Park",
  "id": "053"
}
{
  "name": "Todd Gray",
  "id": "009"
}
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

要仅输出第二个数组,我们可以通过以下方式修改上述命令:

[root@localhost ~]# jq '.[1]' employee.json 
{
  "name": "Randy Park",
  "id": "053"
}
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

请记住,数组从索引 0 开始的。

我们还可以使用 .字段 运算符访问数组中存在的属性。例如,如果我们想访问第三个数组中的 name 属性,那么我们将运行以下命令:

[root@localhost ~]# jq '.[2].name' employee.json 
"Todd Gray"
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

类似地,要访问数组中的所有名称属性,我们可以执行以下命令:

[root@localhost ~]# jq '.[].name' employee.json 
"John Brooks"
"Randy Park"
"Todd Gray"
Salin selepas log masuk
Linux 中的 JQ 命令使用实例

总 结

JQ 命令用于将 JSON 数据转换为更易读的格式并将其打印到 Linux 上的标准输出。JQ 命令是围绕过滤器构建的,过滤器用于从 JSON 文件中仅查找和打印所需的数据。

Atas ialah kandungan terperinci Contoh penggunaan arahan JQ dalam Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tidak dapat log masuk ke mysql sebagai akar Tidak dapat log masuk ke mysql sebagai akar Apr 08, 2025 pm 04:54 PM

Sebab utama mengapa anda tidak boleh log masuk ke MySQL sebagai akar adalah masalah kebenaran, ralat fail konfigurasi, kata laluan tidak konsisten, masalah fail soket, atau pemintasan firewall. Penyelesaiannya termasuk: periksa sama ada parameter pengikat di dalam fail konfigurasi dikonfigurasi dengan betul. Semak sama ada kebenaran pengguna root telah diubahsuai atau dipadam dan ditetapkan semula. Sahkan bahawa kata laluan adalah tepat, termasuk kes dan aksara khas. Semak tetapan dan laluan kebenaran fail soket. Semak bahawa firewall menyekat sambungan ke pelayan MySQL.

C Language Compilation Compilation: Panduan terperinci untuk pemula ke aplikasi praktikal C Language Compilation Compilation: Panduan terperinci untuk pemula ke aplikasi praktikal Apr 04, 2025 am 10:48 AM

C Language Conditional Compilation adalah mekanisme untuk selektif menyusun blok kod berdasarkan keadaan kompilasi masa. Kaedah pengenalan termasuk: menggunakan arahan #if dan #Else untuk memilih blok kod berdasarkan syarat. Ekspresi bersyarat yang biasa digunakan termasuk STDC, _WIN32 dan LINUX. Kes praktikal: Cetak mesej yang berbeza mengikut sistem operasi. Gunakan jenis data yang berbeza mengikut bilangan digit sistem. Fail header yang berbeza disokong mengikut pengkompil. Penyusunan bersyarat meningkatkan kebolehgunaan dan fleksibiliti kod, menjadikannya boleh disesuaikan dengan pengkompil, sistem operasi, dan perubahan seni bina CPU.

Apakah 5 komponen asas Linux? Apakah 5 komponen asas Linux? Apr 06, 2025 am 12:05 AM

Lima komponen asas Linux adalah: 1. Kernel, menguruskan sumber perkakasan; 2. Perpustakaan sistem, menyediakan fungsi dan perkhidmatan; 3. Shell, antara muka pengguna untuk berinteraksi dengan sistem; 4. Sistem fail, menyimpan dan menganjurkan data; 5. Aplikasi, menggunakan sumber sistem untuk melaksanakan fungsi.

Cara menyelesaikan MySQL tidak dapat dimulakan Cara menyelesaikan MySQL tidak dapat dimulakan Apr 08, 2025 pm 02:21 PM

Terdapat banyak sebab mengapa permulaan MySQL gagal, dan ia boleh didiagnosis dengan memeriksa log ralat. Penyebab umum termasuk konflik pelabuhan (periksa penghunian pelabuhan dan ubah suai konfigurasi), isu kebenaran (periksa keizinan pengguna yang menjalankan perkhidmatan), ralat fail konfigurasi (periksa tetapan parameter), rasuah direktori data (memulihkan data atau membina semula ruang meja), isu ruang jadual InnoDB (semak fail ibdata1) Apabila menyelesaikan masalah, anda harus menganalisisnya berdasarkan log ralat, cari punca utama masalah, dan mengembangkan tabiat sandaran data secara teratur untuk mencegah dan menyelesaikan masalah.

Bolehkah mysql berjalan di Android Bolehkah mysql berjalan di Android Apr 08, 2025 pm 05:03 PM

MySQL tidak boleh berjalan secara langsung di Android, tetapi ia boleh dilaksanakan secara tidak langsung dengan menggunakan kaedah berikut: menggunakan pangkalan data ringan SQLite, yang dibina di atas sistem Android, tidak memerlukan pelayan yang berasingan, dan mempunyai penggunaan sumber kecil, yang sangat sesuai untuk aplikasi peranti mudah alih. Sambungkan jauh ke pelayan MySQL dan sambungkan ke pangkalan data MySQL pada pelayan jauh melalui rangkaian untuk membaca dan menulis data, tetapi terdapat kelemahan seperti kebergantungan rangkaian yang kuat, isu keselamatan dan kos pelayan.

Penyelesaian kepada kesilapan yang dilaporkan oleh MySQL pada versi sistem tertentu Penyelesaian kepada kesilapan yang dilaporkan oleh MySQL pada versi sistem tertentu Apr 08, 2025 am 11:54 AM

Penyelesaian kepada ralat pemasangan MySQL adalah: 1. Berhati -hati memeriksa persekitaran sistem untuk memastikan keperluan perpustakaan ketergantungan MySQL dipenuhi. Sistem operasi dan keperluan versi yang berbeza adalah berbeza; 2. Berhati -hati membaca mesej ralat dan mengambil langkah -langkah yang sepadan mengikut arahan (seperti fail perpustakaan yang hilang atau kebenaran yang tidak mencukupi), seperti memasang kebergantungan atau menggunakan arahan sudo; 3 Jika perlu, cuba pasang kod sumber dan periksa dengan teliti log kompilasi, tetapi ini memerlukan pengetahuan dan pengalaman Linux tertentu. Kunci untuk menyelesaikan masalah akhirnya adalah dengan teliti memeriksa persekitaran sistem dan maklumat ralat, dan merujuk kepada dokumen rasmi.

Mysql tidak dapat dipasang setelah memuat turun Mysql tidak dapat dipasang setelah memuat turun Apr 08, 2025 am 11:24 AM

Sebab utama kegagalan pemasangan MySQL adalah: 1. Isu kebenaran, anda perlu menjalankan sebagai pentadbir atau menggunakan perintah sudo; 2. Ketergantungan hilang, dan anda perlu memasang pakej pembangunan yang relevan; 3. Konflik pelabuhan, anda perlu menutup program yang menduduki port 3306 atau mengubah suai fail konfigurasi; 4. Pakej pemasangan adalah korup, anda perlu memuat turun dan mengesahkan integriti; 5. Pembolehubah persekitaran dikonfigurasikan dengan salah, dan pembolehubah persekitaran mesti dikonfigurasi dengan betul mengikut sistem operasi. Selesaikan masalah ini dan periksa dengan teliti setiap langkah untuk berjaya memasang MySQL.

Tidak dapat mengakses MySQL dari terminal Tidak dapat mengakses MySQL dari terminal Apr 08, 2025 pm 04:57 PM

Tidak dapat mengakses MySQL dari terminal mungkin disebabkan oleh: perkhidmatan MySQL tidak berjalan; ralat perintah sambungan; kebenaran yang tidak mencukupi; sambungan blok firewall; Ralat fail konfigurasi MySQL.

See all articles