Çoğu Linux kullanıcısı bu komutu bilir cat Aslında bu, terminaldeki metin dosyalarının içeriğini görüntülemenin en basit yoludur. Ancak zamanla, daha akıllı ve daha gelişmiş bir alternatif ortaya çıktı. batBasitliği, bende olmayan gelişmiş özelliklerle birleştiriyor. cat.
bat Sadece metin görüntülemekle kalmıyor, aynı zamanda otomatik kod renklendirme, satır numaraları ve dosyaları Git gibi araçlarla kolay ve görsel olarak çekici bir şekilde entegre etme yeteneği de ekliyor.
Bir kere deneyen birçok kullanıcı bir daha geri dönmedi. cat Çünkü beklentilerin ötesinde bir okuma ve düzenleme deneyimi sunuyor.
Aşağıdaki satırlarda, bu kararın alınmasına neden olan nedenleri inceleyeceğiz. bat Üstün performans catve terminalde işinizi daha hızlı ve anlaşılır hale getirmek için nasıl kurup kullanabileceğinizi anlatacağız.
Bat, kendisini "kanatlı kedi" olarak tanımlıyor; komik ama biraz yanıltıcı bir benzetme. Bat, iki temel amaca hizmet eden bir araçtır: sözdizimi vurgulama ve git farklılıklarını işaretleme.
Bat komutunun en iyi şekilde nasıl kullanılacağını anlamak için, bu örnekler size komutun nasıl çalıştığını ve farklı seçeneklerinin neler yapmanıza olanak sağladığını gösterecektir.
varsayılan olarak yarasa sözdizimi vurgulaması
Bat'ın temel işlevselliğini göstermek için onu seçtiğiniz dilde bir kaynak kod dosyasında çalıştırmanız yeterlidir, örneğin:
bat tile.js
Kısa bir dosya için, bat size çıktıyı gönderecek ve sizi komut isteminize geri döndürecektir:
Bu durumda bat'ın yaptığı en önemli şey, ANSI renklerini kullanarak dosyanıza dil vurgulaması eklemektir. Bunu C'den HTML'ye ve Markdown'a kadar birçok dilde yapabilir.
danışma
Bat tarafından desteklenen tüm dilleri görüntülemek için --list-languages seçeneğini kullanın.
Bat tarafından kullanılan belirli renkleri değiştirmek için --theme seçeneğini kullanabilirsiniz. Örneğin, gruvbox-dark temasıyla vurgulanan önceki dosyanın başlangıcı şöyle:
uyarı
bat kendisini "cat'in bir klonu" olarak tanımlasa da, aslında öyle değil. cat komutunu birçok şekilde kullanabilirsiniz, ancak asıl amacı dosyaları birleştirmekti. cat bu amaç için en iyi araç olmaya devam ediyor, ancak bat bir dosya görüntüleyici olarak kullanımını geliştiriyor.
yarasa çağrı cihazını akıllıca kullanır
Dosya komut penceresine sığmayacak kadar uzunsa, bat etkileşimli bir sürümü görüntülemek için bir çağrı cihazı kullanır. Bu, man sayfalarını görüntülemek için kullandığınız çağrı cihazıyla aynı şekilde çalışır, ancak aynı olması koşuluyla. Varsayılan olarak, bat daha az miktarda kullanır, ancak alternatif olarak kullanmak için iki seçeneğiniz vardır:
Eğer bat'ın diğer programlardan farklı bir pager kullanmasını istiyorsanız PAGER değişkenini değiştirin veya BAT_PAGER'ı kullanın.
Bir komutu (veya bir programın yolunu) belirtmek için –pager seçeneğini kullanın. Bunu komut satırından veya bir bat yapılandırma dosyasından yapabilirsiniz.
Yarasanın bazen çağrı cihazını kullanıp bazen kullanmaması kafa karıştırıcı veya dikkat dağıtıcı olabilir. Bu durumda, bu davranışı değiştirmek için --paging seçeneğini kullanabilirsiniz:
bat --paging=always README.md
ملاحظة
Bir çağrı cihazını bat ve --paging ve --pager seçeneklerini kullanarak yapılandırmanın birkaç farklı yolu vardır. Daha fazla bilgi için bat belgelerine (man bat) bakın.
yarasa numaraları varsayılan olarak satırlarda
Bat ayrıca varsayılan olarak dosyanızın yanında satır numaralarını da görüntüler. Kullanım kolaylığı için önceki ekran görüntülerinde bu özelliği devre dışı bıraktım; işte varsayılan davranışın bir örneği:
Satır numaralandırma, bir dosya içindeki konumunuzu izlemek için kullanışlıdır. Çoğu alternatif bunu yapsa da, daha az kapsamlı çağrı cihazı varsayılan olarak bu bilgileri görüntülemez. Satır numaralandırma, özellikle kaynak kodunu incelerken ve belirli bir satırdaki bir hatayı bulmaya çalışırken kullanışlıdır. Satır numaralandırmayı devre dışı bırakmak için -p seçeneğini veya yalnızca satır numaralarını göstermek için -n seçeneğini kullanabilirsiniz.
Yarasa çizgileri veya aralıkları işaretleyebilir.
'bat'ta satır numaralandırma, tek bir satırda veya bir aralıkta kullanabileceğiniz satır vurgulama ile birleştirildiğinde en etkilidir. --highlight-line seçeneğinin birkaç çeşidi vardır; işte bir örnek:
bat --highlight-line=7 --highlight-line=14:15 README.md
Bu, 7. satırı ve 14-15. satırları alternatif bir arka plan rengiyle vurgulayacaktır:
Benzer bir seçenek olan --line-range, yalnızca belirli satırları veya aralıkları görüntülemenize olanak tanır:
Elbette, dosyanın bir kısmını görüntülemek ve aynı zamanda belirli satırları vurgulamak için ikisini birleştirebilirsiniz:
Bat, Git ile iyi çalışır.
Kaynak kodu görüntülemek için bat kullanıyorsanız, Git'i mükemmel bir şekilde desteklediğini bilmek sizi memnun edecektir. Bat, bir dosyanın Git deposunda olduğunu tespit ederse dosyadaki değişiklikleri görüntüler:
Bat, değiştirilen her satırın sol kenar boşluğunda, satırın yeni (+), silinmiş (-) veya değiştirilmiş (~) olduğunu belirtmek için tanıdık semboller görüntüler. Bat'e yalnızca değiştirilen satırları ve bunları çevreleyen bazı bağlam satırlarını görüntülemesini söylemek için –diff (-d) işaretini kullanabilirsiniz. Bu özellik, kod değişikliklerini gözden geçirmek veya gelecekteki projenizi takip etmek için harika bir özelliktir.
Yarasa eğer yol üzerindeyse akıllıca davranır.
Yarasanın çağrı cihazı kullanıp kullanmamaya karar verirken nasıl sağduyusunu kullandığını gördük, ancak araç başka akıllı özelliklere de sahip. Özellikle en kullanışlısı, en uygun çıktı türünü tespit edebilme yeteneği.
Bat, çıktısının etkileşimli olmayan bir terminale gönderilip gönderilmediğini kontrol ederek bunu yapar: örneğin, başka bir işleme veya bir dosyaya yönlendirilip yönlendirilmediğini. Bu durumlarda, muhtemelen bat'in sözdiziminin vurgulanmasını istemezsiniz, bu nedenle normalde ürettiği özel renk kodlarını gizler. Bu modda, komut cat gibi davranarak satır numaraları ve aralık vurgulama dahil tüm süslemeleri devre dışı bırakır.
Bir yol içinde olsa bile, bat komutunu biçimlendirilmiş çıktı üretmeye zorlayabilirsiniz. Bu, çıktıyı ilettiğiniz komutun, en yaygın çağrı cihazı gibi ANSI renk kodlarını işleyebildiğini biliyorsanız faydalıdır, örneğin:
bat -f README.md | most
--force-colorization (-f) seçeneği bat'ın tüm renkleri ve süslemeleri korumasını sağlar, dolayısıyla --plain (-p) seçeneğinin tam tersidir.
yarasa insanla da iyi anlaşır
Linux komutlarında talimatları görüntülemek için man'in kullandığı çağrı cihazını yapılandırabildiğinizden, daha iyi sonuçlar için bat'ı kullanacak şekilde de ayarlayabilirsiniz:
Bunu yapmak için man komutunu çalıştırın ve MANPAGER'ı şu şekilde ayarlayın:
MANPAGER="sh -c 'col -bx | bat -l man -p'" man ls
Bu komut birkaç görevi yerine getirdiği için biraz açıklama gerektiriyor. İlk olarak, MANPAGER değişkenini ayarlar ve ardından sonunda "man ls" komutunu çalıştırır. Bu sözdizimi ("NAME=VALUE command"), aşağıdaki komut için bir ortam değişkeni ayarlamanın kolay bir yoludur.
MANPAGER değeri, bir komutu çalıştırmak için -c seçeneğiyle sh'ye (varsayılan kullanıcı arayüzü) yapılan bir çağrıdır. Bu komut, col ve bat olmak üzere iki program çalıştırır ve ilk programın çıktısı ikinci programın girdisine aktarılır. col programı bazı biçimlendirme karakterlerini temizlemeye yardımcı olurken, bat, renklendirme için man sözdizimini kullanmak üzere -l man seçeneğiyle çalışır. -p seçeneği ise man sayfaları için kullanışlı olan daha basit bir stil kullanır.
danışma
Tüm bunları öğrenmek ve yazmak zorunda kalmamak için MANPAGER değişkenini kullanıcı yapılandırma dosyanıza kalıcı olarak ayarlayabilirsiniz!
Yarasa, bazı çok kullanışlı yapılandırma seçenekleri içerir.
bat komutunun oldukça yapılandırılabilir olduğunu muhtemelen fark etmişsinizdir. --list-languages gibi bazı seçenekleri kullanışlıdır. Örneğin, bat yapılandırma dosyasının konumunu yazdırmak için --config-file komutunu kullanabilirsiniz.
Farklı bir renk şeması arıyorsanız (hepimizin kendine göre favorileri vardır), --list-themes seçeneğini deneyin. İlginçtir ki, bu çıktı, standart seçenekleri kullanarak devre dışı bırakabileceğiniz süslemeler ve renklendirmeler kullanıyor:
Araç ayrıca, belirli biçimlendirme ayrıntılarını kontrol etmek için birkaç basit seçeneği destekleyerek çıktısını ince ayar yapmanıza olanak tanır. Boşluklardaki sekmelerin genişliğini ayarlamak için "–tabs n", ekran genişliğinden daha uzun tüm satırları kısaltmak için "–chop-long-lines" ve boş satırları tek bir satıra sıkıştırmak için "–squeeze-blank" kullanın.
Bat, Rust ile yazılmış, sayıları giderek artan Linux komut satırı araçlarından biridir. Bu ekosistem, geleneksel komutları işleyen, görsel açıdan zengin ve etkileşimli kullanıcı arayüzü uygulamalarının gelişimini teşvik eder ve Bat, Linux araç setine harika bir katkı sağlar.
eğer güveniyorsan cat Günlük olarak dosyaları görüntüleyin, deneyimleyin bat Terminal içindeki metinle etkileşim kurma biçiminizde belirgin bir değişiklik olacak. Alışık olduğunuz şeyi değiştirmiyor, aksine başlangıçta eksik olanı ekliyor.
Kod renklendirmeden Git entegrasyonuna kadar her şeyi sunar bat Linux'u kullanmayı daha rahat ve keyifli hale getiren güzellik ve işlevselliğin birleşimi.
Bunu kendiniz deneyin, belki de bu olmadan nasıl yaşayabildiğinizi merak ediyorsunuzdur.














