«awk» etiketlenmiş sorular

Örüntüye yönelik tarama ve işleme dili.

6
2 dosya arasındaki farkı nasıl verebilirim?
Dosyam aşağıdakilerden oluşur; kabaca: username:username:username:username:username Yukarıdaki satır yaklaşık 600 karakter devam ediyor. Kullandığım awkkomut satırından gönderilen bir API / HTTP istek bir argüman olarak kullanmak amacıyla komutu. Komutumu , beni takip eden kullanıcı hesaplarının bir listesini almak için kullanıyorum ve her 24 saatte bir, sabit diskimdeki orijinal listeyi yeni çıkan …

9
Bir dizedeki en uzun sayıyı nasıl yazdırabilirim?
Bir dizede en uzun sayıyı yazdırmak için bir yöntem arıyorum. Örneğin: Dizgim varsa 212334123434test233 nasıl yazdırabilirim 212334123434 ? Not: Sayısal olarak daha yüksek değer için değil, en uzun sürekli sayı dizisini arıyorum. Düzenleme: Cevaplar için teşekkürler, herkes. Bu sorunun cevabı oldukça ezici oldu. @ HaukeLaging'in gönderisini kabul edilen cevap olarak …

3
Awk kullanarak önce son satırı işle
awkSon veri noktasına göre kullanarak normalleştirmek istediğim bir veri dosyası var . Bu nedenle, önce veriyi normalleştirmek, sonra normal şekilde işlemek için son veri noktasına erişmek istiyorum. Aşağıdaki yöntem, taciki kez kullanarak işi yapar, ancak belki de gerekenden daha karmaşıktır. $ cat file 0 5 1 2 2 3 3 …

2
awk yüksek hassasiyetli aritmetik
Awk'a bir ikame işleminde yüksek hassasiyetli aritmetik yapmasını söylemenin bir yolunu arıyorum. Bu, bir dosyadan bir alanın okunmasını ve bu değerin% 1'lik bir artışla değiştirilmesini içerir. Ancak, orada hassasiyet kaybediyorum. Sorunun basitleştirilmiş bir şekilde yeniden üretilmesi: $ echo 0.4970436865354813 | awk '{gsub($1, $1*1.1)}; {print}' 0.546748 Burada, ondalık kesinlikten sonra 16 …


5
Sırayı korurken bitişik yinelenen satırları kaldırın
Her biri birkaç kez yinelenen adları olan bir sütun içeren bir dosya var. Aynı addaki diğer tekrarları, aynı adın diğer tekrarlarına bitişik tutarken, her bir tekrarı yoğunlaştırmak istiyorum. Örneğin, sol tarafı sağ tarafa çevirmek istiyorum: Golgb1 Golgb1 Golgb1 Akna Golgb1 Spata20 Golgb1 Golgb1 Golgb1 Akna Akna Akna Akna Spata20 Spata20 …
11 awk  sed  sort  uniq 

3
Belirli bir dizeyle başlayan sütunları yazdırma
Ben böyle bir şey görünüyor bir dosya var: ID101 G T freq=.5 nonetype ANC=.1 addinfor ID102 A T freq=.3 ANC=.01 addinfor ID102 A T freq=.01 type=1 ALT=0.022 ANC=.02 addinfor Gördüğünüz gibi, her satırın biraz farklı sütun sayısı vardır. Özellikle sütun 1, sütun 2, sütun 3, sütun 4 ve ile başlayan …

8
Metin dosyasını sabit sayıda kelime içeren satırlara bölme
İlgili, ancak tatmin edici bir cevap yok: Büyük bir metin dosyasını 500 kelimelik parçalara nasıl bölebilirim? Ben bir satırda> 10 ^ 7 kelime ile bir metin dosyası ( http://mattmahoney.net/dc/text8.zip ) almak ve her N kelime ile satırlara bölmek çalışıyorum. Mevcut yaklaşımım işe yarıyor, ancak oldukça yavaş ve çirkin (kabuk komut …


5
MAC adresinden bir IPv6 adresi türetmek için kabuk nasıl kullanılır?
MAC adresini, örneğin Ağda benzersiz olması gereken bir bağlantı yerel IPv6 adresi gibi bir arayüz tanımlayıcısı oluşturmak için kullanabileceğimizi biliyoruz. Görüntü bunu yapmanın yolunu göstermektedir: Sorularım: awkVeya kullanarak MAC'den nasıl IPv6 adresi oluşturabilirim sed? VEYA bana belirli bir MAC (bunun gibi bir şey createIPv6 myMAC) için bağlantı yerel IPv6 adresini …
11 sed  awk  ipv6  mac-address 

2
Eşleşen sütunlarla iki dosyaya katılın
file1.txt id No gi|371443199|gb|JH556661.1| 7907290 gi|371443198|gb|JH556662.1| 7573913 gi|371443197|gb|JH556663.1| 7384412 gi|371440577|gb|JH559283.1| 6931777 file2.txt id P R S gi|367088741|gb|AGAJ01056324.1| 5 5 0 gi|371443198|gb|JH556662.1| 2 2 0 gi|367090281|gb|AGAJ01054784.1| 4 4 0 gi|371440577|gb|JH559283.1| 21 19 2 output.txt id P R S NO gi|371443198|gb|JH556662.1| 2 2 0 7573913 gi|371440577|gb|JH559283.1| 21 19 2 6931777 File1.txt dosyasının …
11 awk  join 


6
Belirli bir desen kümesinden desenle başlamayan çizgileri kaldırma
Ben böyle veriler içeren bir dosya var: report aaaaaaaa - .. -th bbbbbbbbb -to ccccccccc .. --. Soru: Aşağıdaki dizelerle başlamayan herhangi bir satırı kaldırmak istiyorum: report -th -to bu, arzu çıktısının tüm bu orta istenmeyen noktaları ve karmaları kaldıracağı ve şöyle görüneceği anlamına gelir: report aaaaaaaa -th bbbbbbbbb -to …


4
Awk kullanarak dosyadaki ilk sütunun genişliğini değişken sayıda alanla değiştirme
Awk'ın printf işlevini nasıl kullanacağımı anlıyorum, ancak her alanı belirtmek istemiyorum. Örneğin, bunun benim dosyam olduğunu varsayalım: c1|c2|c3|c4|c5 c6|c7|c8|c9|c10 c11|c12|c13|c14|c15 Her kaydın ilk alanı, ilk alandaki en uzun hücre olan c11 genişliği olacak şekilde biçimlendirmek istiyorum: c1 |c2|c3|c4|c5 c6 |c7|c8|c9|c10 c11|c12|c13|c14|c15 Anlayabileceğimi anlıyorum: awk -F"|" '{printf "%-3s%s%s%s%s\n", $1, $2, $3, …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.