Komut satırında yapılı veri: jq, yq, CSV ve XML
JSON, YAML, CSV ve XML'i grep ile kırpmak yerine doğru araçla sorgular, dönüştürür ve doğrularsın; API çıktılarını ve yapılandırmaları güvenle işlersin.
Seviye 401 · 17 ders · 15 pratik lab
Dersler
JSON ve jq
- JSON'ın yapısı ve neden grep yetmez
- jq süzgeçleri: alanlar, diziler ve yollar
- select, map ve koşullu seçim
- Dönüştürmek ve gruplamak: group_by ve reduce
- jq ile JSON dosyasını güvenle düzenlemek
- Satır başına bir JSON olan günlükleri işlemek
- Kısa görev: API yanıtından süresi dolmak üzere olan kullanıcıları listele
YAML
- YAML tuzakları: girinti, tür ve "Norveç sorunu"
- yq ile sorgulamak ve düzenlemek
- Kısa görev: yirmi YAML dosyasında aynı anahtarı güncelle
CSV ve XML
- CSV'yi doğru araçla okumak: tırnak ve virgül sorunları
- Miller ve csvkit ile sorgu ve dönüştürme
- xmllint ve XPath ile XML sorgulamak
- Biçimler arası dönüştürme: JSON, YAML, CSV
- Kısa görev: XML envanterinden eski sürümdeki sunucuları çek
Kapanış
- Şemayla doğrulamak ve bozuk girdiyi reddetmek
- Bitirme görevi: üç farklı biçimdeki envanteri tek rapora birleştir
Pratik lablar
- API yanıtından süresi dolacak kullanıcıları listele: Kaydedilmiş API yanıtından hesabı önümüzdeki hafta dolacak kullanıcıların adını ve bitiş tarihini jq ile çıkar.
- JSON satırlı günlükte hataları servise göre grupla: Satır başına bir JSON içeren günlükte hata düzeyindeki kayıtları servise göre grupla ve sayılarını ver.
- JSON yapılandırmasını bozmadan güncelle: Bir dizi içindeki belirli ada sahip öğenin iki alanını jq ile değiştir, dosyayı geçici dosya üzerinden atomik olarak yaz.
- İç içe JSON'dan tek değeri çek: İç içe yapılandırma JSON'unda her servisin dinlediği portu jq yol ifadeleriyle bulup servis-port çiftleri olarak yaz.
- JSON dizisini jq ile CSV'ye çevir: Sunucu envanteri JSON'undan ad, IP ve işletim sistemi alanlarını seç, eksik alanlara boş değer koyarak başlıklı bir CSV üret.
- reduce ile kiracı başına kullanım toplamı çıkar: Faturalama dökümünden kiracı başına toplam depolama ve istek sayısını reduce ile hesapla ve azalan sırada yaz.
- Yanlış türe dönüşen YAML değerini düzelt: Ülke kodu ve sürüm numarası gibi değerlerin mantıksal ya da sayı olarak okunmasına yol açan satırları bul ve tırnakla.
- Yirmi YAML dosyasında aynı anahtarı güncelle: Yirmi servis tanımındaki imaj sürümü anahtarını yq ile güncelle, yorumlar ve diğer alanlar değişmesin.
- Girinti hatası yüzünden yok sayılan ayarı bul: Geçerli YAML olduğu halde uygulamanın görmediği ayarın yanlış düzeyde durduğunu yq ile kanıtla ve düzelt.
- Tırnaklı virgül içeren CSV'yi doğru oku: cut ile yanlış bölünen CSV dosyasından adres sütununu doğru araçla çıkar ve satır sayısının korunduğunu doğrula.
- Miller ile departman özetini çıkar: Varlık CSV'sinden departman başına cihaz sayısı ve ortalama yaşı Miller ile hesapla ve tablo olarak yazdır.
- XML envanterinden eski sürümlü sunucuları çıkar: XML envanterinde işletim sistemi sürümü eşiğin altında olan sunucuların adlarını XPath ile listele.
- JSON envanterini CSV'ye çevir: JSON biçimindeki sunucu listesini başlık satırlı CSV'ye çevir ve eksik alanları boş bırak.
- Şemaya uymayan kayıtları reddet: Gelen JSON kayıtlarını zorunlu alan ve tür kurallarına göre denetle, uymayanları neden bilgisiyle ayrı dosyaya ayır.
- Üç biçimdeki envanteri tek raporda birleştir: JSON, YAML ve CSV olarak tutulan envanter parçalarını sunucu adına göre birleştir ve çelişen alanları raporla.
Kurs hakkında
JSON, YAML, CSV ve XML'i grep ile kırpmak yerine doğru araçla sorgular, dönüştürür ve doğrularsın; API çıktılarını ve yapılandırmaları güvenle işlersin.
Ne öğreneceksin
- JSON ve jq
- YAML
- CSV ve XML
- Kapanış
Ön koşullar
Aynı yolun 301 düzeyine kadar olan konularını uygulamış olmalısın.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde geçer. Kurulum gerekmez; lab her derste temiz başlar.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 401 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.