Pytania otagowane jako awk

Język skanowania i przetwarzania ukierunkowany na wzorce.

6
Przetwórz plik / etc / passwd, aby wyświetlić listę wszystkich użytkowników, których folder domowy znajduje się w / home
Mam przykładowy plik / etc / passwd, taki jak ten: tom:x:1000:1000:Work:/home/tom:/bin/bash george:x:1000:1000:Work:/home/george:/bin/bash bla:x:1000:1000:Work:/home/bla:/bin/bash boo:x:1000:1000:Work:/home/boo:/bin/bash bee:x:1000:1000:Work:/root/list:/bin/bash Próbuję wyświetlić listę wszystkich użytkowników z folderem domowym /home/. napisałem cat ~/Desktop/e.txt |awk -F ":" '{if ($6 ~/^/home/) print $1;}' gdzie e.txt to tekst, który tutaj skopiowałem. Rozumiem, że występuje problem z odwrotnym ukośnikiem, który …

2
wpatruj się w miejsce i stdout
Czy można skorzystać gawkz -i inplaceopcji i wydrukować coś stdout? Na przykład, jeśli chciałbym zaktualizować plik i jeśli są jakieś zmiany, wydrukuj nazwę pliku i zmienione wiersze stderr, mógłbym zrobić coś takiego find -type f -name 'myfiles' -exec gawk -i inplace '{if(gsub(/pat/, "repl")) { print FILENAME > "/proc/self/fd/2" ; print …
10 awk  gawk 

2
Scalanie kolumn z dwóch oddzielnych plików
Jak utworzyć nowy plik łączący selektywne kolumny z dwóch osobnych plików za pomocą awk? Bez bałaganu zamówienia elementów OBIE pliki. Przykład: plik 3 może zawierać kolumnę 1, 2, 3 z pliku 1 i kolumnę 4 z pliku 2. File 1 A 23 8 T A 63 9 9 B 45 …

3
Zamień ciąg na indeks sekwencyjny
Czy ktoś może zasugerować elegancki sposób na osiągnięcie tego? Wejście: test instant () test instant () ... test instant () //total 1000 lines wyjście powinno być: test instant1 () test instant2 () test instant1000() Puste wiersze znajdują się w moich plikach wejściowych i w tym samym katalogu jest wiele plików, …


4
Sortuj pola bezpośrednio
Próbuję posortować w wierszu danych wejściowych nad nieznaną liczbą pól: Wejście: ab bc bc ab cd ef bc bc cd ef cd bc ab ef ab bc cd gh Wynik: ab bc ab bc bc cd ef bc cd ef ab cb cd ab bc cd ef gh Używałem czegoś …

1
awk nieoczekiwanie usuwa kropkę z łańcucha
Chcę dodać kolumnę (2. miejsce) do .csvpliku i chcę, aby wartości tej kolumny były ciągami znaków i były cytowane; Następujące polecenie dodaje kolumnę, ale bez cudzysłowów: awk -F"," 'BEGIN { OFS = "," } {$2="2.4.0"; print}' test.csv > output.csv Poniższe podejście obejmuje cudzysłowy, ale z jakiegoś powodu usuwa ostatnią .(kropkę) …
9 awk  csv 

4
awk przypisuje do wielu zmiennych jednocześnie
Próbuję wyciągnąć dwie wartości liczbowe z ciągu i przypisać je do zmiennych za pomocą awk( gawkwłaśnie tego używam). Chcę wyciągnąć główne i drobne numery wersji z łańcucha wersji tmux do awkzmiennych, np .: wkład tmux 2.8:; maj == 2imin == 8 wkład tmux 1.9a:; maj == 1imin == 9 wkład …
9 awk  gawk 

3
Jak przechwycić pierwszy adres IP z polecenia ifconfig?
Jak przechwycić pierwszy adres IP, który pochodzi z ifconfigpolecenia? ifconfig -a enw178032: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 100.14.22.12 netmask 255.255.0.0 broadcast 100.14.255.255 inet6 fe80::250:56ff:fe9c:158a prefixlen 64 scopeid 0x20<link> ether 00:10:56:9c:65:8a txqueuelen 1000 (Ethernet) RX packets 26846250 bytes 12068811576 (11.2 GiB) RX errors 0 dropped 58671 overruns 0 frame 0 TX packets …
9 linux  bash  awk  sed  ifconfig 


5
awk sed if statement
Próbuję dodać 0 na początku, JEŻELI występuje „.” przy drugim znaku tej linii. Nie mogłem połączyć tych dwóch; awk '{ print substr( $0, 2, 1 ) }' file.txt pokazując drugą postać sed -ie "s/.\{0\}/0/" file.txt dodając zero na początku. Powinien być napis „jeśli drugi znak jest kropką”. przykładowy plik: 1.02.2017 …

1
Jak uzyskać wiersze, których n-ta kolumna zawiera m-tą kolumnę
Mam plik CSV zawierający domeny i wiadomości e-mail, takie jak to: site1.com,mail.site1.com site2.com,testmail.com site3.com,mx.site3.com site4.com,smtp.site4.com site5.com,foomail.com site6.com,barmail.com site7.com,webmail.site7.com site8.com,01mx.site8.com site9.com,foobarmail.com site10.com,mx-smtp222.site10.com Chcę uzyskać wiersze, w których kolumna wiadomości zawiera kolumnę domen tego samego wiersza. W powyższym przykładzie dane wyjściowe powinny wynosić: site1.com,mail.site1.com site3.com,mx.site3.com site4.com,smtp.site4.com site7.com,webmail.site7.com site8.com,01mx.site8.com site10.com,mx-smtp222.site10.com

4
Jak zwiększyć licznik linii dla zamiany początku linii na AWK /…?
Najpierw pomyślałem o SED ( sed "s/^/COUNTER \&/" /tmp/1.tex), ale jest on zaprojektowany dla pojedynczej linii i nie mogę zwiększyć licznika przez sed tak myśląc teraz, awkponieważ mam świetne doświadczenia ze gawkzintegrowanymi podejściami. Dane What & South Dragon & North Dragon & 5 \\ \hline What & South Dragon & …


8
Jak grepować wiersze o określonej wartości w określonej kolumnie?
Mam następujący plik 200.000 1.353 0.086 200.250 1.417 0.000 200.500 1.359 0.091 200.750 1.423 0.000 201.000 1.365 0.093 201.250 1.427 0.000 201.500 1.373 0.093 201.750 1.432 0.000 202.000 1.383 0.091 202.250 1.435 0.000 202.500 1.392 0.087 202.750 1.436 0.000 203.000 1.402 0.081 203.250 1.437 0.001 203.500 1.412 0.073 204.000 1.423 …
9 awk  grep 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.