Ancak, o dosyanın tüm içeriğini okumayı düşünmediğiniz, bunun yerine o dosyanın yalnızca belirli bir bölümüyle ilgilendiğiniz durumlar vardır. Böyle bir durumda, fazladan yer kaplayacağından ve işlenmesi daha uzun zaman alacağından, dosyanın tamamını okumanız kesinlikle önerilmez, bunun yerine doğrudan o dosyanın o bölümüne tıklamalısınız. Bu makalede, bir dosyadan son sütunu yazdırmak için "awk" komutunu kullanmanın farklı yöntemlerinde size yol göstermeyi amaçlıyoruz.
Bir Dosyadan Son Sütunu Yazdırmak için “awk” Komutunu Kullanmanın Farklı Yolları:
Bir dosyadan son sütunu yazdırmak için “awk” komutunu kullanabileceğimiz iki farklı yöntem vardır. Her ne kadar bu iki yöntem birbirinin yerine kullanılabilir, çünkü sonuçta aynı çıktıyı verirler, ancak ilk yöntem, bir dosyanın tam sütun sayısını bildiğiniz durumlar için daha uygundur ve ikinci yöntem, toplam sütun sayısı bilinmiyor. Gelin bu iki yöntemi tek tek inceleyelim.
Not: Bu yöntemlerin her ikisini de göstermek için Linux Mint 20 kullandık, ancak istediğiniz herhangi bir Linux çeşidini seçmekte özgürsünüz.
Yöntem # 1: Bir Dosyanın Toplam Sütun Sayısını bildiğinizde:
Bu yöntem, bir dosyadaki tam sütun sayısını bildiğinizde kullanılabilir.g. 3, 5, 10, vb. Bu yöntemi göstermek için aşağıdaki adımlar belirtilen sırayla gerçekleştirilmelidir:
Ana klasörünüzde istediğiniz herhangi bir adla bir metin dosyası oluşturun. Bu senaryoda, onu awk olarak adlandırdık.Txt. Şimdi açmak için bu dosyaya çift tıklayın ve aşağıdaki resimde gösterilen verileri metin dosyanıza yazın. Toplam üç farklı sütun vardır ve sütunlar birbirinden sekme boşluğu ile ayrılmıştır. Ayrıca seçtiğiniz herhangi bir rastgele veriyi de yazabilirsiniz.
Bu dosyayı oluşturduktan sonra kaydedip kapatmanız gerekir. Şimdi görev çubuğunda bulunan simgesine tıklayarak terminali Linux Mint 20'de başlatın. Linux Mint 20 terminali aşağıdaki resimde de gösterilmektedir:
Şimdi terminalinize aşağıda belirtilen komutu yazın ve ardından yürütmek için Enter tuşuna basın:
$ awk 'print $ColNum' dosyası.TxtBurada ColNum'u son sütunun sütun numarasıyla değiştirmeniz gerekir. Örneğin oluşturduğumuz metin dosyasının toplam üç sütunu var yani son sütunun sütun numarası 3 olacak. Amacımız bu dosyanın yalnızca son sütununu yazdırmak olduğundan ColNum'u 3 ile değiştirdik. Bir sütun numarasına “$” sembolü ile devam edildiğinde, bu, o sütunun değerlerine erişmek istediğimiz anlamına gelir. Ayrıca, "dosya"yı metin dosyanızın tam adıyla değiştirmeniz gerekir. Bizim durumumuzda dosya adı awk idi.Txt.
Enter tuşuna basar basmaz, awk dosyasının son sütununun tüm değerleri.txt, aşağıdaki resimde gösterildiği gibi terminalinizde görünecektir. awk komutu bu sütunu okuyacaktır, print komutu ise değerlerini terminalde görüntülemekten sorumlu olacaktır.
Yöntem # 2: Bir Dosyanın Toplam Sütun Sayısı Bilinmiyorsa:
Bu yöntem genellikle bir dosyadaki toplam sütun sayısını bilmediğinizde kullanılır. Bu yöntemle bir dosyanın son sütununu yazdırmak için aşağıdaki gibi ilerlemeniz gerekecektir:
Yukarıdaki yöntem için oluşturduğumuz aynı metin dosyasını kullanıyoruz. Tek yapmamız gereken terminali başlatmak ve ardından içine aşağıdaki komutu yazmak:
$ awk 'print $(NF)' dosyası.TxtBurada NF, işi bir dosyadan son sütunu açıkça yazdırmak olan bir değişkendir. Örneğin, bir dosyada 10 veya 20 veya daha fazla sütun varsa ancak bunların tam sayısını bilmiyorsanız ve yine de son sütuna erişmek istiyorsanız, bu değişken sizin için çok yararlı olabilir. Yine, "dosya" yı metin dosyanızın adıyla değiştirmeniz gerekir. Bizim durumumuzda, Yöntem # 1 ile aynı dosyayı kullandığımız için, dosyayı değiştirdik.awk ile txt.Txt.
Bu komutu terminalinize yazdıktan sonra Enter tuşuna basarak çalıştırmanız gerekmektedir. Bu komutun çıktısının, yukarıdaki yöntemde kullanılan komutun çıktısıyla aynı olduğunu fark edeceksiniz.e. yıl verilerini içeren metin dosyasının son sütunu terminalde başarıyla yazdırıldı.
Sonuç:
Bu yazımızda size “awk” komutunu kullanarak bir dosyadan sadece son sütunu yazdırma konusunda rehberlik ettik. Bu komutun ayrıntılı olarak incelenebilecek daha birçok yönü vardır.e. bu komut, farklı türde bir çıktı oluşturmak için diğer farklı komutlarla birlikte de kullanılabilir. Bununla birlikte, bugünkü tartışmanın kapsamı için, yalnızca bir dosyadan son sütunu yazdırmak için kullanımını göstermekle ilgilendik. Aynı şeyi yapmanın iki farklı yolunu size sunduk. Şimdi bu yöntemlerden hangisini izlemeyi seçeceğiniz tamamen sizin durumunuza bağlı.