Puncte:3

Cum să eliminați liniile duplicate numai dacă sunt imediat după altele în fișier

drapel in
Cas

Să zicem că am următorul fișier:

$ cat test.txt
A
-----
b
-----
-----
c
-----
-----
-----
d
-----
e
-----
-----

Acum vreau să elimin toate -----, dar numai dacă se repetă unul după altul. Deci rezultatul ar trebui să arate astfel:

A
-----
b
-----
c
-----
d
-----
e
-----

am incercat grep -Pvz -- "-----\n-----", dar asta nu a funcționat.

Puncte:10
drapel hr

Exact asta unic comanda este facuta pentru:

NUME
       uniq - raportează sau omite linii repetate

REZUMAT
       uniq [OPȚIUNE]... [INTRARE [IEȘIRE]]

DESCRIERE
       Filtrați liniile adiacente care se potrivesc din INPUT (sau intrare standard), scriind în OUTPUT
       (sau ieșire standard).

       Fără opțiuni, liniile care se potrivesc sunt îmbinate la prima apariție.

Asa de

$ uniq test.txt 
A
-----
b
-----
c
-----
d
-----
e
-----

Alternativ, puteți utiliza acest sed de o linie 69.Ștergeți liniile consecutive duplicate dintr-un fișier (emulează „uniq”) din Sed One-Liners Explained, Partea III: Ștergerea selectivă a anumitor linii și aplicații speciale

sed '$!N; /^\(.*\)\n\1$/!P; D' test.txt

care ar putea fi preferat dacă doriți să editați test.txt în loc (prin adăugarea -i sau --la loc opțiune).

Puncte:0
drapel ai

doar fa-o uniq filename.txt După cum spune și numele, au rămas doar linii unice și repetările sunt îmbinate

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.