Jq trên Linux là công cụ dòng lệnh dùng để đọc, lọc và biến đổi dữ liệu JSON trực tiếp trong terminal. Công cụ này giúp xử lý hiệu quả JSON từ file cấu hình, API, log hệ thống, Docker, Kubernetes và các dịch vụ cloud mà không cần viết thêm chương trình. Trong bài viết này, mình sẽ cùng bạn tìm hiểu yêu cầu môi trường, cách cài đặt và các thao tác thực tế với lệnh jq để tự động hóa công việc hằng ngày trên Linux.
Những điểm chính
- Khái niệm: Hiểu rõ jq là một công cụ xử lý JSON trên dòng lệnh, giúp bạn nhanh chóng phân tích, lọc và biến đổi dữ liệu JSON mà không cần viết script phức tạp.
- Lý do sử dụng: Nắm được vì sao jq trở thành công cụ cần thiết khi làm việc với JSON trong Linux, đặc biệt trong các tác vụ DevOps, API và tự động hóa.
- Điều kiện sử dụng: Biết các yêu cầu cần có để dùng lệnh jq hiệu quả, bao gồm môi trường hệ điều hành và dữ liệu JSON hợp lệ.
- Cài đặt và chuẩn bị dữ liệu: Nắm được quy trình cài đặt jq trên Linux và cách chuẩn bị file JSON mẫu để thực hành và kiểm thử.
- Định dạng và xem JSON: Biết cách dùng jq để format JSON dễ đọc hơn và xem toàn bộ hoặc từng phần nội dung JSON một cách nhanh chóng.
- Trích xuất dữ liệu: Hiểu cách lấy giá trị từ JSON ở nhiều mức khác nhau, từ giá trị gốc đến mảng và đối tượng con.
- Lọc dữ liệu theo điều kiện: Nắm được cách lọc, trích xuất các trường cụ thể trong JSON nhằm phục vụ nhu cầu phân tích và xử lý dữ liệu chính xác hơn.
- Xử lý nâng cao: Biết cách sắp xếp, thống kê và đếm dữ liệu JSON bằng jq để phục vụ các bài toán phân tích phức tạp.
- Kết hợp với lệnh khác và API: Hiểu cách sử dụng jq cùng các lệnh Linux phổ biến và API để xử lý dữ liệu JSON theo luồng tự động.
- Ứng dụng trong Bash Script: Nắm được cách dùng jq trong Bash Script để tự động hóa quy trình, đồng thời biết khi nào nên dùng jq và khi nào nên chuyển sang giải pháp khác như Python.
- Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến lệnh jq Linux.
Jq Linux là gì?
Jq trong Linux là một công cụ dòng lệnh chuyên dùng để phân tích, lọc và biến đổi dữ liệu ở định dạng JSON, cho phép thao tác trực tiếp với JSON ngay trong terminal mà không cần mở trình soạn thảo hoặc viết thêm chương trình riêng. Công cụ này được thiết kế như một JSON processor với cú pháp riêng, hỗ trợ đọc dữ liệu từ file, từ kết quả của lệnh khác hoặc từ API, sau đó áp dụng các biểu thức jq để trích xuất trường, lọc theo điều kiện, duyệt mảng và tái cấu trúc lại dữ liệu JSON theo nhu cầu.

Jq được phát triển bằng ngôn ngữ C nên có kích thước nhỏ, tốc độ xử lý nhanh và có thể sử dụng trên hầu hết các bản phân phối Linux. Đồng thời, nó cũng hoạt động tốt khi kết hợp với các lệnh khác trong pipeline như curl, cat hay grep để hình thành các chuỗi xử lý dữ liệu linh hoạt trên dòng lệnh.
Nhờ cơ chế hoạt động dựa trên filter và pipeline, jq cho phép chuyển đổi JSON thô thành dữ liệu có cấu trúc rõ ràng, dễ đọc. Điều này giúp mình dễ dàng tích hợp jq vào script Bash, hỗ trợ hiệu quả các tác vụ liên quan đến API, log hệ thống, DevOps và Cloud trong môi trường Linux.
Vì sao cần dùng jq trong Linux?
Trong môi trường làm việc với API, log, Docker, Kubernetes hay các hệ thống cloud, JSON xuất hiện liên tục và việc thao tác trực tiếp trên dòng lệnh với lệnh jq mang lại nhiều lợi ích nổi bật như sau:
- JSON là định dạng dữ liệu mặc định trong nhiều hệ thống hiện đại: Phần lớn API, công cụ CLI, dịch vụ cloud, container platform hay hệ thống giám sát đều trả về dữ liệu dưới dạng JSON, nên việc nắm được lệnh jq giúp phân tích và khai thác các phản hồi này trực tiếp trên Linux mà không cần thêm ứng dụng trung gian.
- JSON thô khó đọc và khó tìm thông tin khi dữ liệu lớn hoặc lồng nhau: Các cấu trúc JSON nhiều cấp, chứa mảng và đối tượng lồng nhau rất khó quan sát nếu chỉ dùng lệnh cat hoặc less. Trong khi đó, lệnh jq có thể định dạng lại, hiển thị theo cấu trúc và chỉ giữ lại phần thông tin cần thiết.
- Jq hỗ trợ lọc và trích xuất dữ liệu có chọn lọc: Thông qua biểu thức filter, lệnh jq cho phép chọn từng trường, lọc theo điều kiện, duyệt mảng, nhóm dữ liệu, từ đó giảm lượng thông tin dư thừa và tập trung vào các giá trị phục vụ kiểm tra, debugging hoặc báo cáo.
- Tăng hiệu quả khi kết hợp với pipeline trên dòng lệnh: Jq hoạt động tốt khi nhận đầu vào từ các lệnh như curl, wget, cat và trả về kết quả đã xử lý để tiếp tục đưa vào các lệnh khác, giúp xây dựng chuỗi xử lý phức tạp chỉ bằng shell mà không phải viết thêm mã nguồn riêng.
- Tối ưu tự động hóa trong script Bash và công việc DevOps: Khi đưa lệnh jq vào script, quản trị viên và DevOps có thể tự động đọc JSON cấu hình, phản hồi API, log hệ thống và ra quyết định dựa trên dữ liệu đó (bao gồm đếm, so sánh, kiểm tra trạng thái), giúp chuẩn hóa quy trình và giảm thao tác thủ công trên server Linux.

Điều kiện sử dụng lệnh jq
Để sử dụng lệnh jq trên Linux một cách ổn định và tận dụng hết khả năng xử lý JSON, môi trường làm việc cần đáp ứng một số yêu cầu cơ bản sau:
- Hệ điều hành hỗ trợ môi trường dòng lệnh Linux: Jq được thiết kế cho các hệ thống Unix-like nên cần chạy trên các bản phân phối Linux hoặc môi trường tương thích (Ubuntu, Debian, CentOS, AlmaLinux, Arch Linux, WSL, container Linux), nơi có sẵn terminal để thao tác với lệnh.
- Quyền cài đặt gói phần mềm hoặc quyền ghi thư mục người dùng: Để cài jq thông qua trình quản lý gói như
apt,yum,dnf,pacmanhoặc tải binary về thư mục~/binhay/usr/local/bin, người dùng cần quyền sudo hoặc ít nhất có quyền ghi vào thư mục cài đặt. - Đã cài đặt jq trên hệ thống: Sau khi cài từ repository của bản phân phối hoặc tải trực tiếp binary, bạn cần kiểm tra bằng
jq --versionđể đảm bảo lệnh jq sẵn sàng sử dụng trong PATH, nếu lệnh không được nhận diện thì cần bổ sung đường dẫn hoặc cài đặt lại. - Có nguồn dữ liệu JSON để thực hành và khai thác: jq làm việc với dữ liệu JSON được đọc từ file, từ output của lệnh khác (ví dụ
curl,wget) hoặc từ API trả về JSON, vì vậy người dùng cần chuẩn bị file JSON mẫu, endpoint API hoặc công cụ tạo JSON để áp dụng các filter jq. - Biết cách thao tác cơ bản với terminal và pipeline: Việc sử dụng jq thường gắn liền với các lệnh như
cat,curl, dấu|pipeline và chuyển hướng output sang file, nên người dùng cần nắm các thao tác CLI cơ bản để kết hợp jq trong thực tế.

Các bước cài đặt và chuẩn bị dữ liệu JSON
Bước 1: Cài đặt jq trên Linux
Bước đầu tiên là cài jq lên hệ điều hành Linux để có thể thao tác với dữ liệu JSON trực tiếp trên dòng lệnh. Việc cài đặt có thể thực hiện qua trình quản lý gói của từng bản phân phối hoặc bằng cách tải binary từ trang dự án jq. Sau đó, bạn kiểm tra lại bằng lệnh phiên bản để chắc chắn công cụ đã hoạt động. Dưới đây là các lệnh cài đặt jq cho từng bản phân phối của Linux:
- Đối với Ubuntu / Debian:
sudo apt update
sudo apt install jq -y- Đối với CentOS / AlmaLinux / Rocky Linux (hoặc tương tự):
sudo yum install jq -y
# hoặc
sudo dnf install jq -y- Cài bằng binary:
Bạn tải từ trang dự án jq, chép vào ~/bin hoặc /usr/local/bin và cấp quyền thực thi, ví dụ:
curl -L https://jqlang.org/download/linux64/jq -o ~/bin/jq
chmod a+x ~/bin/jqSau khi cài xong, bạn chạy lệnh:
jq --versionNếu lệnh trả về phiên bản (ví dụ jq-1.6), điều đó cho thấy lệnh jq đã được cài đặt thành công và sẵn sàng sử dụng trong PATH.
Bước 2: Chuẩn bị file JSON mẫu để thực hành
Tiếp theo, bạn cần chuẩn bị một file JSON đủ chi tiết để dễ dàng minh họa các thao tác đọc, lọc, trích xuất, sắp xếp và thống kê với jq. Cấu trúc JSON nên có cả các trường đơn lẻ và một mảng chứa nhiều đối tượng để có thể áp dụng đa dạng ví dụ.
Đầu tiên, để tạo file servers.json bạn dùng lệnh:
vi servers.jsonTrong file này, bạn thêm nội dung JSON mẫu bao gồm:
- Trường
datacentermô tả vị trí trung tâm dữ liệu. - Trường
total_serversthể hiện tổng số server. - Mảng
serverschứa nhiều object, mỗi object có các thuộc tính nhưid,name,ip,os,status,cpu,ramđể phục vụ các thao tác lọc theo trạng thái, sắp xếp theo CPU hoặc trích xuất danh sách IP, tên server.
{
"datacenter": "HCM",
"total_servers": 3,
"servers": [
{
"id": 1,
"name": "web-server-01",
"ip": "192.168.1.10",
"os": "Ubuntu 22.04",
"status": "running",
"cpu": 4,
"ram": "8GB"
},
{
"id": 2,
"name": "db-server-01",
"ip": "192.168.1.11",
"os": "AlmaLinux 9",
"status": "stopped",
"cpu": 8,
"ram": "16GB"
},
{
"id": 3,
"name": "backup-server-01",
"ip": "192.168.1.12",
"os": "Ubuntu 20.04",
"status": "running",
"cpu": 2,
"ram": "4GB"
}
]
}
Định dạng và xem nội dung JSON với lệnh jq L
1. Format JSON cho dễ đọc
Khi làm việc với JSON thô, dữ liệu thường nằm trên một dòng dài hoặc ít thụt lề, rất khó quan sát cấu trúc, đặc biệt khi có nhiều cấp lồng nhau. Sử dụng lệnh jq để format lại giúp hiển thị JSON rõ ràng hơn, dễ kiểm tra key, value và các mảng/đối tượng bên trong. Bạn sử dụng lệnh:
cat servers.json | jq
Lệnh trên sẽ đọc nội dung servers.json và áp dụng filter . (identity). Qua đó, nó in lại toàn bộ JSON với khoảng trắng, xuống dòng và thụt lề chuẩn, hỗ trợ việc rà soát cấu trúc và nội dung dữ liệu nhanh ngay trên terminal.
2. Đọc toàn bộ nội dung hoặc từng phần JSON
Sau khi đã có file JSON được format, người dùng có thể dùng lệnh jq để đọc toàn bộ đối tượng hoặc chỉ trích xuất một phần dữ liệu tùy theo nhu cầu. Cách này rất hữu ích khi file JSON lớn hoặc chứa nhiều mảng lồng nhau, cần tập trung vào từng khu vực dữ liệu cụ thể.
Để đọc nguyên đối tượng/mảng, bạn dùng lệnh:
jq '.' servers.jsonLệnh này dùng filter . để in ra toàn bộ nội dung JSON trong file, tương tự như cat servers.json | jq nhưng gọi jq trực tiếp với file đầu vào.
Để đọc từng phần tử trong mảng, bạn dùng lệnh:
jq '.[]' file.json
# hoặc
jq '.servers[]' servers.jsonVới cú pháp trên, lệnh jq sẽ lần lượt duyệt qua từng phần tử của mảng ở cấp gốc hoặc mảng servers, in mỗi object trên một khối riêng, giúp quan sát chi tiết từng bản ghi thay vì xem cả mảng lớn một lúc.
Trích xuất giá trị trong JSON
1. Lấy một giá trị cụ thể ở mức gốc
Ở bước này, lệnh jq được dùng để truy xuất nhanh các trường đơn nằm ở cấp gốc của tài liệu JSON, giúp lấy đúng giá trị cần mà không phải đọc toàn bộ cấu trúc. Cách làm này đặc biệt hữu ích khi chỉ cần kiểm tra vài thông tin tổng quan như tên datacenter hoặc tổng số server trong file cấu hình.
Bạn lấy tên datacenter bằng lệnh:
cat servers.json | jq '.datacenter'
Lấy tổng số server với lệnh:
cat servers.json | jq '.total_servers'
Hai lệnh trên áp dụng filter trực tiếp tới từng key ở root, jq sẽ trả về giá trị tương ứng dưới dạng JSON hợp lệ, có thể dùng để quan sát hoặc kết hợp tiếp trong pipeline.
2. Lấy toàn bộ một mảng hoặc đối tượng con
Khi cần xem hoặc thao tác sâu hơn với danh sách server, bạn có thể truy cập trực tiếp vào mảng hoặc object con thay vì in toàn bộ file. Việc này giúp tập trung vào khu vực dữ liệu liên quan, đồng thời chuẩn bị cho các bước lọc, sắp xếp và thống kê ở các phần sau.
Lấy toàn bộ danh sách server, bạn dùng lệnh:
cat servers.json | jq '.servers'
Filter .servers sẽ trả về toàn bộ mảng chứa các object server, giữ nguyên cấu trúc nhưng tách riêng phần cần làm việc để dễ quan sát hoặc truyền tiếp cho các filter khác.
3. Duyệt từng phần tử trong mảng
Sau khi có mảng servers, bước tiếp theo là duyệt từng phần tử để xem chi tiết thông tin của từng server, mỗi lần in ra một object riêng. Cách hiển thị này giúp đọc dữ liệu rõ ràng hơn. Đồng thời, nó tạo nền tảng cho các thao tác trích xuất trường, lọc theo điều kiện hoặc đếm số lượng bản ghi.
Để lấy từng phần tử, bạn dùng lệnh:
cat servers.json | jq '.servers[]'
Cú pháp .servers[] yêu cầu jq lặp qua từng phần tử trong mảng servers và in ra lần lượt, mỗi server sẽ xuất hiện dưới dạng một object độc lập, rất thuận tiện khi kiểm tra hoặc kết hợp với các filter như select, lấy field cụ thể, hay chuyển đổi định dạng.
Lọc và trích xuất trường cụ thể từ JSON
1. Lấy một trường cụ thể trong mảng
Ở giai đoạn này, lệnh jq được dùng để trích xuất riêng từng cột dữ liệu từ mảng servers. Ví dụ như tên hoặc địa chỉ IP, giúp danh sách xuất ra gọn hơn và dễ sử dụng cho các thao tác tiếp theo. Cách tiếp cận này đặc biệt hữu ích khi cần xuất danh sách tên server, IP hoặc một trường cụ thể để kiểm tra, thống kê hoặc đưa vào script.
Bạn lấy danh sách tên server bằng lệnh:
cat servers.json | jq '.servers[].name'
Lấy danh sách địa chỉ IP bằng lệnh:
cat servers.json | jq '.servers[].ip'
Cú pháp .servers[].name và .servers[].ip yêu cầu jq duyệt qua từng phần tử trong mảng servers và in ra giá trị trường tương ứng, giúp thu được danh sách các giá trị theo từng dòng.
2. Lọc server theo điều kiện
Sau khi có khả năng trích xuất trường, bước tiếp theo là lọc các object trong mảng dựa trên điều kiện cụ thể, chẳng hạn trạng thái hoạt động hoặc cấu hình CPU. Việc sử dụng hàm select() trong jq cho phép biểu thức điều kiện linh hoạt, chỉ giữ lại những server đáp ứng tiêu chí mong muốn.
Lọc server đang chạy (status == “running”) bạn dùng lệnh sau:
cat servers.json | jq '.servers[] | select(.status=="running")'
Lọc server có CPU ≥ 4 dùng lệnh:
cat servers.json | jq '.servers[] | select(.cpu >= 4)'
Trong hai lệnh trên, jq lần lượt duyệt từng phần tử của mảng servers rồi áp dụng select() để kiểm tra điều kiện, chỉ những object thỏa điều kiện mới được in ra, giúp tập trung vào nhóm server cần quan tâm.
3. Chỉ lấy một số trường cần thiết
Trong nhiều trường hợp, phần output không cần chứa toàn bộ key của object mà chỉ giữ lại vài trường quan trọng để dễ đọc và dễ đưa vào báo cáo hoặc file log. jq hỗ trợ tạo object mới từ các trường đã chọn, nhờ đó giảm nhiễu thông tin và giúp kết quả trở nên súc tích hơn.
Để lấy tên và IP dưới dạng object, bạn dùng lệnh sau:
cat servers.json | jq '.servers[] | {name: .name, ip: .ip}'
Biểu thức trên tạo ra một object mới cho mỗi server, chỉ bao gồm hai trường name và ip, rất phù hợp khi cần xuất danh sách server gọn nhẹ để kiểm tra kết nối, lập danh sách giám sát hoặc sử dụng tiếp trong các công cụ khác.
Sắp xếp, thống kê và xử lý nâng cao
1. Sắp xếp dữ liệu theo trường bất kỳ
Khi danh sách server ngày càng nhiều, việc sắp xếp theo một trường nhất định giúp quan sát và phân tích dữ liệu thuận tiện hơn, đặc biệt với các chỉ số tài nguyên như CPU, RAM hoặc trạng thái. Hàm sort_by() trong jq cho phép sắp xếp mảng các object theo giá trị của một key cụ thể, sau đó có thể kết hợp với reverse để đảo ngược thứ tự, phục vụ các tình huống cần xem từ thấp lên cao hoặc từ cao xuống thấp.
Sắp xếp tăng dần theo CPU:
cat servers.json | jq '.servers | sort_by(.cpu)'
Sắp xếp giảm dần, bạn dùng lệnh:
cat servers.json | jq '.servers | sort_by(.cpu) | reverse'
Trong hai lệnh trên, jq nhận mảng servers, áp dụng sort_by(.cpu) để tạo mảng mới đã được sắp xếp theo giá trị trường cpu, sau đó reverse đảo chiều mảng nhằm hiển thị các server có cấu hình CPU cao ở đầu danh sách.
2. Đếm số phần tử thỏa điều kiện
Ngoài sắp xếp, jq còn hỗ trợ thống kê nhanh số lượng phần tử trong mảng thỏa mãn một điều kiện nhất định, rất hữu ích cho các báo cáo tổng quan như số server đang chạy, số server dừng hoặc số instance vượt ngưỡng tài nguyên. Cách làm phổ biến là lọc các object phù hợp điều kiện, gom chúng vào một mảng mới rồi dùng length để lấy số phần tử.
Đếm số server đang chạy, bạn dùng lệnh sau:
cat servers.json | jq '[.servers[] | select(.status=="running")] | length'
Biểu thức trên duyệt qua từng phần tử trong servers, giữ lại những object có status=="running", đưa chúng vào một mảng tạm thời bằng cặp […], sau đó length trả về tổng số server đang hoạt động, có thể dùng trực tiếp cho mục đích giám sát hoặc tích hợp vào script kiểm tra hệ thống.
Kết hợp lệnh jq với lệnh khác và API
1. Dùng lệnh jq với curl khi gọi API
Trong môi trường thực tế, dữ liệu JSON thường được trả về từ các REST API, vì vậy việc kết hợp curl và jq giúp vừa lấy dữ liệu từ endpoint, vừa xử lý kết quả trực tiếp trên dòng lệnh mà không cần lưu ra file tạm. Cách làm phổ biến là dùng curl để gọi API với chế độ im lặng (-s), sau đó pipe (|) sang jq để format, lọc hoặc trích xuất những trường cần thiết.
Để lấy toàn bộ JSON từ endpoint, bạn dùng lệnh:
curl -s https://api.example.com/servers | jqLấy danh sách IP từ kết quả API dùng lệnh:
curl -s https://api.example.com/servers | jq '.servers[].ip'Với hai lệnh trên, curl chịu trách nhiệm gửi yêu cầu HTTP và nhận phản hồi JSON, còn jq đọc luồng dữ liệu từ stdin, sau đó hoặc in đẹp toàn bộ nội dung hoặc chỉ lấy trường .servers[].ip, giúp xem nhanh log, trạng thái dịch vụ, thông tin hệ thống hoặc kết quả từ các REST API ngay trong terminal.
2. Xuất kết quả jq ra file
Bên cạnh việc xem trực tiếp trên màn hình, rất nhiều trường hợp cần lưu lại kết quả đã lọc để dùng cho các bước xử lý tiếp theo, như import vào công cụ khác, gửi báo cáo hoặc sử dụng trong script. Việc kết hợp jq với chuyển hướng output (>) cho phép ghi kết quả vào file văn bản mà không cần thao tác thủ công.
Ví dụ: Lưu danh sách tên server ra file:
cat servers.json | jq '.servers[].name' > server-name.txt
Câu lệnh này đọc file servers.json, trích xuất trường name của từng server rồi ghi toàn bộ danh sách tên vào file server-name.txt, tạo ra một nguồn dữ liệu gọn nhẹ có thể dùng lại trong các script kiểm tra, lệnh ping hàng loạt hoặc các tác vụ quản trị khác.
Dùng jq trong Bash Script để tự động hóa
Khi kết hợp với Bash, jq giúp trích xuất dữ liệu từ JSON rồi đưa trực tiếp vào vòng lặp shell, từ đó tự động hóa các tác vụ lặp đi lặp lại như kiểm tra kết nối, giám sát dịch vụ hoặc thao tác hàng loạt trên nhiều server. Cách làm phổ biến là dùng jq để lấy danh sách giá trị ở dạng chuỗi thô, sau đó duyệt qua từng phần tử bằng vòng lặp for hoặc while trong script.
Ví dụ để ping tới từng IP trong JSON, bạn có thể sử dụng lệnh:
for ip in $(cat servers.json | jq -r '.servers[].ip'); do
echo "Ping tới server $ip"
doneTrong ví dụ này, jq với tùy chọn -r sẽ in ra danh sách IP ở dạng raw string (không kèm dấu ngoặc kép), mỗi IP trên một dòng, giúp vòng lặp trong Bash đọc từng giá trị một cách thuận tiện và hạn chế lỗi do ký tự trích dẫn.
Câu hỏi thường gặp
Jq Linux có dùng được ngoài Linux không?
Jq không chỉ dùng trên Linux mà còn hỗ trợ đa nền tảng, có bản cho macOS, Windows (qua binary hoặc WSL) và các hệ thống Unix-like khác, miễn là có môi trường dòng lệnh phù hợp.
Khi nào nên dùng jq thay vì tự viết script Python để xử lý JSON?
Jq phù hợp khi cần thao tác nhanh trên terminal, xử lý các tác vụ lọc, trích xuất, sắp xếp, thống kê JSON trực tiếp trong pipeline mà không muốn tạo file script hoặc thiết lập môi trường lập trình riêng như Python.
Làm sao để kiểm tra nhanh JSON có hợp lệ trước khi dùng lệnh jq trong script?
Bạn có thể dùng lệnh jq . file.json hoặc cat file.json | jq.Nếu JSON hợp lệ jq sẽ in ra nội dung đã format, còn nếu sai cú pháp jq sẽ báo lỗi, giúp bạn phát hiện vấn đề trước khi đưa vào các bước xử lý tự động.
Tóm lại, lệnh jq Linux mang đến một bộ công cụ xử lý JSON mạnh mẽ ngay trên dòng lệnh, giúp bạn dễ dàng format dữ liệu, truy vấn trường cụ thể, lọc theo nhiều điều kiện, sắp xếp và thống kê mà không cần rời khỏi terminal. Khi đã nắm vững các thao tác cài đặt, chuẩn bị file JSON, sử dụng các filter cơ bản và tích hợp vào Bash script, bạn có thể xây dựng những quy trình tự động hóa rõ ràng, giảm thao tác thủ công và tăng đáng kể hiệu quả vận hành trên hệ thống Linux.




