Belge

Linux Sisteminde Ack Komutu Nasıl Kurulur ve Kullanılır

GREP komutu Linux ve Unix benzeri işletim sistemlerinde yaygın olarak kullanılmaktadır.  Bir kod veya dize yığınının içinde sözdizimlerini, belirli metinleri ve daha fazlasını bulabilir.

GREP komutunu kullanmak, belirli değerleri bulmak veya bir dosya sisteminden veya depodan bazı veri kümelerini filtrelemek için her zaman yararlı değildir.

Değerleri aramak ve sorguları çalıştırmak için depo düzeyinde bazı komutları çalıştırmamız gerektiğinde Ack komutunun Linux’taki ana kullanım durumu vurgulanır.

Linux’ta terminal kabuğu üzerinde GREP komutunu rahatlıkla kullanabilirsiniz.  Pek çok deneyimli Linux kullanıcısının GREP komutunun yerine Ack komutunu zaten kullandığına şaşırabilirsiniz.

Bununla birlikte, hem GREP hem de Ack komutları aynı türde sonuçların çıktısını verecek şekilde çalışır, ancak bunların artıları ve eksileri vardır.

Linux’ta Ack Komutu


Ack komutunu bir Linux sisteminde kullanmak oldukça kolay ve sorunsuzdur.  Kurduktan sonra kabukta Ack komutlarını çalıştırabilirsiniz.  Varsayılan olarak bu komut sistemde yüklü değildir.

Ack komutu, Linux’taki değişkenlerden, dosyalardan, dizelerden ve depolardan veri bulabilir.  Bu komut, değerleri bulma ve bulmanın yanı sıra, birçok başka uzantıya sahip dosyaları bulmak için de kullanılabilir.

Ack komutu C programlama dilinde yazılmıştır.  Bu yazımızda Ack komutunun Linux’ta nasıl kurulacağını ve nasıl kullanılacağını göreceğiz.

Adım 1: Ack’i Linux’a yükleyin


Aracın sisteme kurulması, Linux’ta Ack komutunu kullanmanın tam adımıdır.  Ack komutunu Linux’a yüklemek hiçbir ekstra üçüncü taraf uygulaması veya aracı gerektirmez.

Ack komutu, resmi Linux deposunda zaten mevcuttur ve resmi paket yükleyici komutu aracılığıyla tüm büyük Linux dağıtımlarına kurulabilir.

Aşağıda belirtilen kurulum listelerinden Ack komutunu sisteminize almak için lütfen Linux dağıtımınıza uygun komutu kullanın.  Komutları çalıştırmadan önce root erişiminizin olduğundan ve sistem deposunun güncel olduğundan emin olun.

  • Ack aracını Ubuntu/Debian Linux’a yükleme
$ sudo apt install ack-grep

install ack grep

  • Fedora/Red Hat Linux’ta Ack Aracını edinin
$ sudo yum install ack-grep
  • Ack’i Arch tabanlı Linux sistemlerine yükleme
$ sudo pacman -S ack-grep
  • Ack’i SuSE Linux’a yükleme
$ sudo zypper install ack-grep

Kurulum bittikten sonra kabuktaki Ack komutlarını kullanmaya başlayabilirsiniz.  Yeni başlayanlar için Ack kılavuzunu terminal kabuğuna yazdırabilirsiniz.

man ack

Adım 2: Git’i Linux’a yükleme


Bu adımda, Linux’ta Ack komutuyla daha sonra kullanmak üzere Git deposuna erişmek için Git aracını kuracağız.  Şimdi Ack komutunu kullanmaya başlamak için neden git kullanmamız gerektiğini merak edebilirsiniz.

Peki, Ack aracını test etmek için bir depo içinde veri arayıp bulacağımıza göre, bir depoya erişmek için Git’ten daha iyi ne olabilir?

Ancak Git’i sisteminize kurmak için lütfen dağıtımınıza göre root erişimi ile terminal kabuğunuzda aşağıdaki komutları yürütün.

  • Git’i Debian/Ubuntu Linux’ta edinin
$ sudo apt install git

install GIT

  • Git’i Red Hat ve Fedora Workstation’a yükleyin
$ sudo yum install git
  • Git’i Arch ve Arch tabanlı sistemlere yüklemek için aşağıdaki komutu çalıştırın
$ sudo pacman -S git
  • Git’i SuSE ve openSUSE Linux’tan edinin
$ sudo zypper install git

3. Adım: Git Deposunu Klonlayın


Git’i sistemimize doğru bir şekilde kurduktan sonra artık ünlü Vim script editörünün bir başka versiyonu olan dosya sistemimizdeki Git’ten Neovim deposunu kopyalayacağız.  Git’te yeniyseniz Git komutları hakkında daha fazla bilgi edinmek için lütfen bu yazıyı inceleyin.

Ancak Ack ve Git’e hazır olduğumuzda Neovim git deposunu dosya sistemimize kopyalayabilir ve komutun nasıl çalıştığını kontrol etmek için birkaç Ack komutunu çalıştırabiliriz.

$ git clone https://github.com/neovim/neovim.git

git clone neovim

Git klonlaması bittiğinde Neovim dizinine göz atmak için aşağıdaki cd komutunu çalıştırın.

$ cd neovim && ls

Adım 4: Linux’ta Bir Grup Ack Komutunu Çalıştırın


Şu ana kadar Git ve Ack kurulumlarını yaptık ve Neovim Git deposunu dosya sistemimize indirdik.  Beklentilerimizi karşılayıp karşılamadıklarını kontrol etmek için birkaç Ack komutunu çalıştıracağız.

1. Ack Yoluyla Bir Değer Arayın


Büyük bir depoda arama yaptığımızda yüzleşmemiz gereken en sinir bozucu şey sonuca kadar aşağı doğru ilerlemektir.  Linux’ta, geçerli terminal penceresinde istenen değeri bulmak için ‘less’ sözdizimini kullanarak ACK ile aşağıdaki echo komutunu kullanabilirsiniz.

$ echo '--pager=less -RFX' >> ~/.ackrc

Finding Ack Command in Linux

Deponun içinde kaç dosya olduğunu öğrenmek istiyorsanız her zaman aşağıdaki find komutunu çalıştırabilirsiniz.  Ancak ACK komutunu kullanmak size daha doğru çıktılar verecektir.  Linux’ta aşağıdaki Ack komutları istediğiniz sonuçları elde etmenize yardımcı olacaktır.

$ find . | wc -l
$ ack -f | wc -l

2. Bir Model Arayın


Bir çıktı modelini veya belirli bir yönelime sahip bir dizeyi bulmak için ACK komutunu kullanabilirsiniz.  Örneğin, aşağıdaki komut depo içindeki ‘restrict’ dizisinin kalıplarını bulacaktır.  Lütfen bu komutun kısmi veya tam eşleşmelere sahip verileri bulacağını unutmayın.

$ ack restrict

ack restrict

Yalnızca sorguyla tam olarak eşleşen değerleri görmek istediğiniz kelime tipi çıktıya bakmanız gerekiyorsa, terminal kabuğunda aşağıdaki ACK komutunu -w (kelime) sözdizimiyle çalıştırmanız gerekecektir.

$ ack -w restrict

Python, C veya diğer komut dosyaları gibi bir programlama komut dosyasındaki bir sorgunun eşleşmelerini bulmanız gerekiyorsa, doğrudan ACK komutuna komut dosyası içindeki değeri aramasını söyleyebilirsiniz.  Örneğin, aşağıdaki ACK komutu bir Python betiğinden sorgu sonucunu yazdıracaktır.

$ ack -w --python restrict

ack Command in Linux

Aşağıda belirtilen komutlar, sorgunun (restrict) bulunduğu tüm veri türlerini yazdıracaktır.  Bir sonraki komut verinin kaç satırda bulunduğunu yazdıracaktır.

$ ack -c restrict
$ ack -ch restrict

 

Yazının orijinalini buradan okuyabilirsiniz.