Puncte:1

Comanda Awk cu cuvânt ca delimitator

drapel de

Cum să folosesc awk pentru a tăia pe baza unui cuvânt care păstrează totul după el: Exemplu:

File.txt > 
XXXXWORDNNNNNN
XXXWORDNNNNNNN
XXWORDNNNNNNNN
XWORDNNNNNNNNNN
WORDNNNNNNNNNN

ieșire dorită:

File.txt >
NNNNNN
NNNNNNN
NNNNNNNN
NNNNNNNNN
NNNNNNNNNN
Puncte:2
drapel cn
cat File.txt | awk -F"WORD" '{ print $2 }'

Parametrul -F caută de obicei un singur caracter ca delimitator, dar din moment ce ați vrut să utilizați un șir de litere ca delimitator, acesta trebuie pus între ghilimele duble.

$2 înseamnă tot textul care urmează „WORD”... cu excepția cazului în care „WORD” reapare în rândul textului. Dacă se întâmplă acest lucru, atunci veți vedea doar textul între prima și a doua apariție a „WORD”.

Sper ca asta ajuta.

drapel hr
+1, deși ghilimele nu sunt de fapt necesare doar pentru că delimitatorul are mai multe caractere - sunt necesare doar dacă conține caractere care sunt speciale pentru shell (ceea ce `WORD` nu are). Diferența mai semnificativă este că o valoare FS cu mai multe caractere este interpretată ca o *expresie regulată* (deși din nou `WORD` nu conține caractere speciale de expresii regex). De asemenea, aveți un [uuoc](https://en.wikipedia.org/wiki/Cat_%28Unix%29#Useless_use_of_cat). Deci ar putea fi simplificat la `awk -F WORD '{print $2}' File.txt`
mondotofu avatar
drapel cn
Mulțumesc @steeldriver. Nu știam că există un termen pentru uuoc. Uneori folosesc cat atunci când încerc o idee din motive de lizibilitate sau transmit stdout printr-o secvență de conducte. aș fi putut folosi *

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.