66 puan yazan GN⁺ 2025-10-15 | 1 yorum | WhatsApp'ta paylaş
  • Linux'ta çalışma verimliliğini artıran çeşitli modern komut satırı araçlarının tanıtımı
  • Geleneksel Unix komutlarını modern biçimde ikame eden veya yeteneklerini geliştiren, ayrıca Rust·Go gibi dillerle geliştirilmiş performans odaklı birçok araç içeriyor

Dosya görüntüleme ve gezinme araçları

  • bat : cat komutunun syntax highlighting ve git entegrasyonu güçlendirilmiş sürümü
  • exa : ls/tree yerine geçen modern bir dosya listeleme görüntüleyicisi, ancak şu anda bakımının durdurulmuş durumda
  • eza : exa'nın bir fork'u olarak modern ls/tree sunar
  • lsd : yeni nesil ls; mevcut uyumluluğu ve daha şık çıktıyı destekler
  • broot : gezinmeyi geliştiren ağaç yapılı dosya gezgini
  • nnn : hafif ve hızlı terminal dosya yöneticisi

Dosya·dizin boyutu analizi

  • ncdu : metin tabanlı, sezgisel bir du arayüzü sunar
  • dust : Rust ile yazılmış, daha kolay bir du alternatifi
  • duf : klasik df'ye göre geliştirilmiş kullanılabilirlik sunan disk kullanım analizi aracı

Dosya ve kod arama

  • fd : yalın ve hızlı bir find alternatifi; kullanılabilirliği çok iyi
  • ripgrep : gitignore destekli ultra hızlı grep alternatifi
  • ag : ack'e benzer ama daha hızlı bir kod arama aracı
  • fzf : genel amaçlı bulanık arama aracı. Pipeline'larda ve çeşitli yerlerde kullanılabilir
  • bfs : breadth-first tabanlı bir find alternatifi

Terminal içi Git/diff görüntüleyicileri

  • delta : git ve diff sonuçlarını yüksek okunabilirlikle görselleştirir

Komut geçmişi ve işleme

  • mcfly : shell geçmişi arama ve gezinmesini çarpıcı biçimde geliştirir. Daha iyi arama kalitesi ve sezgisel bir UI sunar

Veri işleme

  • choose : cut ve bazı awk kullanımlarına göre daha sezgisel ve hızlı bir alternatif
  • jq : JSON'e özel bir sed gibi kullanılan veri ayrıştırıcı
  • sd : daha tanıdık bir find/replace deneyimi sunan, sed alternatifi araç

Sistem/süreç izleme

  • bottom : çapraz platform grafik tabanlı sistem ve süreç monitörü
  • glances : top/htop'un geliştirilmiş sürümü
  • gtop : terminal panosu tarzı sistem monitörü
  • procs : Rust ile yazılmış ps alternatifi komut

Benchmark ve ağ

  • hyperfine : CLI benchmark otomasyon aracı
  • gping : grafik çıktı özelliği içeren bir ping aracı

HTTP istemcileri

  • httpie : modern ve kullanıcı dostu bir CLI HTTP istemcisi. Geliştirici API testleri için uygun
  • curlie : curl'ün gücünü httpie'nin kullanılabilirliğiyle birleştiren araç
  • xh : performans odaklı bir httpie alternatifi

Dizin geçişi·editör

  • zoxide : z'den esinlenen akıllı cd komutu
  • micro : modern özelliklere sahip terminal metin editörü

Yeni ortaya çıkan CLI yardımcı araçları

  • up : gerçek zamanlı önizleme pipeline aracı; komut çıktısı anında görülebilir

Yardım·dokümantasyon araçları

  • ManKier : özet biçimli man sayfaları, temiz komut açıklamaları
  • tldr : kısa, örnek odaklı man sayfası özeti
  • tealdeer : Rust tabanlı tldr implementasyonu, hızlı çalışma sunar
  • explainshell : komut argümanlarını otomatik analiz edip anlamlarını görsel olarak açıklar
  • cheat.sh : tldr ile cheatsheet'i birleştiren çevrimiçi yardım servisi

GUI araçları

  • baobab : GUI tabanlı disk kullanım analiz aracı
  • stacer : sistem optimizasyonu ve izleme için GUI aracı, servis yönetimi de içerir

1 yorum

 
GN⁺ 2025-10-15
Hacker News yorumu
  • Bu tür araçlar nesnel olarak daha iyi olabilir ama ne zaman yeni bir OS kursam, bir VM ayağa kaldırsam ya da SSH ile bağlansam, bu araçları her seferinde yeniden kurmanın bitmeyen bir eziyet olduğunu fark ettim. Her ortamda ayrı ayrı ayarlamak yorucu; bir yerde yeni araçları, başka bir yerde geleneksel araçları karışık kullanmak da istemiyorum. Klasik araçları gerçekten iyi öğrenmek, hayatı en rahat ettiren yol

    • Bazı insanlar zamanlarının çoğunu kendi bilgisayarlarında geçiriyor; bu yüzden bu tür kullanım kolaylığı iyileştirmelerinin değeri büyük. Yine de klasik araçları da belli ölçüde kullanmayı biliyorlar, bu yüzden arada başka sunucularda çalışmaları gerektiğinde de yeterli oluyor. Herkes bütün gün birçok farklı sunucuya giriş yapmak zorunda olan bir sistem yöneticisi değil

    • Bazı araçlar o kadar daha iyi ki, biraz zahmetli kurulsa bile buna fazlasıyla değiyor. Klasik araçları iyi kullanırım ama fd ya da ripgrep her zaman daha iyi

    • Nix’i gerçekten sevmemin nedeni, neredeyse her ortamda aynı kurulumu sağlayabilmesi (kullandığım ortam linux ya da macOS olduğu sürece, sadece bu ikisini dert ediyorum). Root yetkisi gerektirmeyen çeşitli Nix kurulum yöntemleri var; bu yüzden her yerde kendi ortamımı aynen oluşturabiliyorum. Elbette Nix olmasa da klasik araçlar gayet kullanılabilir. Ya o ya bu diye bir seçim yapmak gerekmiyor; ikisine de sahip olabilirsiniz

    • Yeni bir OS kurarken zaten gerekli paketleri apt-get, pacman, dnf, brew gibi araçlarla yüklüyorsunuz; kendi tarayıcınızı, editörünüzü vb. de ayrıca kuruyorsunuz. SSH ile bağlanınca GUI kullanamıyorsunuz diye bu, GUI araçlardan kaçınmak için bir sebep değil. Kişisel ortamla ortak ortamda araç setinin farklı olması bana büyük bir sorun gibi gelmiyor. Örneğin bat, cat’in tam yerine geçmekten çok sözdizimi vurgulaması ekleyerek hayatı kolaylaştırıyor. Kurulu değilse, kullanmazsınız olur biter

    • Bence UNIX’in “tek işi iyi yap” felsefesi açısından bakınca, daha iyi bir alternatif çıktığında onunla kolayca yer değiştirilebilmesi zaten bu basit yardımcı programların özünü oluşturuyor. Kariyer açısından önce klasik araçları öğrenmek doğru, ama yeni alternatifleri de mutlaka öğrenmek gerekir diye düşünüyorum. bat ya da eza yerine, fd (find alternatifi), sd (sed alternatifi) gibi zaman kazandıran araçlar bana gerçekten daha faydalı geliyor

  • Birden fazla ağda ve müşteri ortamlarında yüzlerce sunucuya bağlanan biri olarak, özel araçlar kullanmanın neredeyse hiçbir değeri yok. Çünkü ortamların %90’ında bu araçlar kurulu değil. Ben ansible-config içine sadece birkaç şey ekleyip otomasyonla dağıtıyorum ama listeyi çok kısa tutuyorum. Yönettiğim sistemlerin %95’i Debian ya da Ubuntu olduğu için temel seviye zaten büyük ölçüde aynı; üstüne sadece ack, etckeeper, vim, pv, dstat gibi birkaç şey ekliyorum

    • Burada kilit nokta “sunucu” kısmı. Sysadmin’lere yönelik hafif iyileştirilmiş programların çoğu çok değerli olmayabilir ama bazıları geliştirme ortamında kullanılan gerçek dev araçları; dolayısıyla bunları sadece kod yazdığınız az sayıdaki makineye kurmanız yeterli. ripgrep (harika bir recursive grep), jq (Unix’in temel araç setinde alternatifi olmayan bir JSON işlemcisi), hyperfine (benchmark aracı) buna iyi örnekler

    • Windows ve Linux arasında gidip gelerek çalıştığım için ripgrep gibi güçlü çapraz platform araçları gerçekten çok kullanışlı

    • Bu tür uygulamaları uzak SSH oturumuna otomatik taşıyan bir araç ya da SSH eklentisi var mı diye merak ediyorum. Küçük binary’lerse geçici klasöre kopyalayıp kullanmak mümkün olabilir; bu süreci otomatikleştirmek de hayal edilebilir. Ama güvenlik açısından sorun çıkarır mı, ek yetkiler gerekir mi, asıl mesele bu. Sonuçta belirleyici olan şey bu uygulamaların taşınabilirliği. Ben de bunu sık sık düşünüyorum

    • emacs neredeyse başlı başına bir işletim sistemi gibi çalışıyor; bu sayede hangi sistem olursa olsun tanıdık bir ortama sahip olabiliyorsunuz. “GNU is my operating system, linux is just the current kernel” sözü de buradan geliyor. Deneyimli bir admin olarak, Linux öğrenmeye yeni başlayan birine neden önce info komutuna bakmasını ve o kılavuzu baştan sona okumasını önerdiğimi bu açıklıyor. Bunu yaparsa çoğu yöneticinin çok önüne geçebilir. Yerleşik araçların neler olduğunu bilirseniz kılavuzlar da çok iyi olduğu için script yazmak kolaylaşır; Linux felsefesinin özü de tam olarak budur. Eskiden nano bile olmadan sadece vi bulunan zamanlar vardı ama bugünlerde CI/CD otomasyonuyla bir TUI editörü eklemek de kolay

    • Bu “ben şöyle biriyim” tarzı yorumlara pek katılamıyorum. Uzağa bağlandığı sistemlere özel araç kurmuyor olması kimsenin umrunda olmayabilir. Söylenmek istenen şey, en azından yerel bilgisayarınıza bu araçları kurup avantajlarından yararlanmanız

  • Bu tabloda “bu araç hangi sorunu çözüyor?” diye ek bir sütun olsa iyi olurdu diye düşünüyorum. Ayrıca “Rust ile yazıldı” gibi ifadelerin ayırt edici bir özellik olduğunu da düşünmüyorum

    • Bir şirket toplantısında “Go ile yazıldı” ifadesinin ayırt edici özellik diye sunulmasını dinleyip afalladığım olmuştu. #facepalm

    • Tablodaki birçok öğe aslında “syntax highlight”, “ncurses interface”, “more intuitive” gibi gerçek sorunlara değiniyor. Ama “Rust ile yazıldı”, “modern”, “better” gibi ifadeler bence yardımcı olmuyor

    • Çoğu aracın birincil amacı UX’i iyileştirmek

    • GPL dışı lisans kullanmak da ayırt edici bir özellik değil

    • Bu araçların önemli bir kısmının Windows’ta da çalışabilmesi güzel

  • Böyle araç listeleri her zaman keyifli. Muhtemelen çoğu insan burada yer alan araçlardan en az bir ya da ikisini iyi kullanabilir. Benim için ripgrep ve jq vazgeçilmez. ripgrep, grep alternatifi olarak en iyi drop-in seçenek; jq ise tam da ihtiyaç duyduğum bir problemi çözüyor. lsd ve dust’ı da denemeyi düşünüyorum. Yeni bir aracın bana doğrudan gerekli olmaması önemli değil; insanların bu tür araçlara zaman harcamasını takdir ediyorum. Topluluğun genel araç kutusunu biraz daha iyi hâle getirmek gerçekten etkileyici

    • İlk seçeceğim şey muhtemelen fzf olurdu. rg ya da jq’dan çok daha fazla tercih ediyorum

    • ripgrep, grep ile aynı şekilde davranmadığı için aslında tam bir drop-in alternatifi değil. Harika bir program ama tamamen uyumlu da değil

    • Benim gibi Linux admin’lerinin her birinin böyle sıkı sıkıya derlenmiş listeleri vardır. Ben GPL tabanlı bir stack etrafında kendi tarafımı kurdum ve özellikle bu ikrima.dev formatını seviyorum

  • Ben terminalde yaşıyorum ama bu araçlar ya benim şu anki sorunlarımı çözmüyor, ya sistemimde kurulu olmuyor, ama nedense on binlerce GitHub yıldızına sahip oluyor. Bu popülerliğin sebebini gerçekten anlayamıyorum

    • Müzik arşivinin içinde yaşayan biri de kendi zevkine uymayan ya da arşivinde olmayan bir sanatçı milyonlarca albüm sattığında şaşırabilir. Şaka bir yana, bu araçlardan herhangi birini gerçekten deneyip denemediğinizi sormak isterim. Ben de eskiden vim’in neden kullanıldığını anlamazdım; ama düzgün kullanınca nedenini anladım

    • fzf kullanmıyor musunuz? Terminal hayatınız çok zor olmalı. Komutları doğrudan çalıştırmaktan ziyade, çeşitli shell eklentileriyle Ctrl+R üzerinden bash_history, Ctrl+T ile de mevcut dizindeki dosyalar üzerinde fuzzy search yapabilmek gerçekten çok faydalı

    • Temel Unix araç seti o kadar sağlam ki, sadece varsayılan araçlarla da işinizi gayet görebilirsiniz. Birçok alternatif araç daha iyi olabilir ama zorunlu değiller; ayrıca çoğu varsayılan kurulumla gelmiyor

    • Merakımdan soruyorum: yerleşik Unix araçlarıyla gizli dosyaları (.git vb.) yok sayıp yalnızca belirli uzantılarda recursive grep yapmanın zarif bir yolu var mı? Mesela rg -g '*.foo' bar benim çok sık kullandığım bir desen. fd ile regex ya da glob’a uyan dosyaları bulmak da aynı şekilde. Temel araçlarla bunun temiz bir yolunu bulamadım

    • Terminalde bütün gün ne yaptığınızı merak ediyorum da, araç setinizi iyileştirme isteğiniz hiç olmuyor mu? Yoksa bütün araçları kendiniz mi yazıyorsunuz diye sormak isterim

  • Karanlık modda bağlantı metni çok az görünüyor, okumak zorlaşıyor

  • Bence jq, mevcut araçlarla gerçekten çözülemeyen somut bir problemi çözen tek araç. Geri kalanların çoğu sadece sözdizimi, performans, vurgulama ya da Rust ile yazılmış olma gibi farklar sunuyor

  • Keşke tek bir ekip, parametreler, renkler, tablolar vb. tasarımı tutarlı olan bir araç “suite”i çıkarsa

  • Uzun süre htop’u top’tan daha erişilebilir olduğu için kullandım ama htop varsayılan olarak kernel thread’lerini göstermediğinden sorun kaynağını bulmamı zorlaştırdı. Sonra tekrar top’a döndüm; çünkü tüm bilgiyi gösteriyor ve daha güvenilir. htop/btop gibi arayüzlerin biraz gösterişten ibaret olduğunu düşünüyorum

  • Bu yazı 2023 tarihli. “Modern araçların” çoğu muhtemelen çoktan güncellenmiştir, hatta yeni ve daha popüler olanlar çıkmış olabilir

    • Araç sayısı çok olduğu için, yarısı bile hayatta kalsa bu bile yeterince değerli

    • Benim deneyimim tam tersi. Bu araçların çoğu, zaman ayırıp iyice öğrenirseniz inanılmaz güçlü olan GNU temel araçlarını bir kez daha “yeniden icat etmekten” ibaret gibi geliyor bana