Pozdrav,
Na primer komanda: ''sed 's/pattern/pattern/g' fajl1.txt''
ako imam 1000 paterna koje hoću da pretražim u fajlu1.txt, bi trebala da se ponovi 1000 puta.
Da li može jedna komanda koja bi čitala jedan po jedan pattern iz liste?
Procesovanje teksta i liste reči
Moderator: Urednik
- Posts: 4591
- Joined: 04 Feb 2011, 20:32
- Location: Beograd
- Contact:
Staviš sed u "for" petlju?
Imaš ovde par primera za "for": https://www.cyberciti.biz/faq/bash-for-loop/" onclick="window.open(this.href);return false;
Izmena:
Ako je spisak izraza u posebnoj datoteci, možeš da uradiš nešto poput "for izraz in $(cat datoteka);do sed izraz...;done". Mada to delimično zavisi i od kompleksnosti izraza. Prazni karakter (space) se tumači kao početak novog izraza. Tako da izrazi moraju biti zaokruženi sa dvostrukim navodnicima ako ih sadrže. U osnovi je to to.
Ali što je veća količina izraza to je veća mogućnost da for komanda počne da brlja. Ne znam kakvo je memorijsko ograničenje za broj for izraza.
Imaš ovde par primera za "for": https://www.cyberciti.biz/faq/bash-for-loop/" onclick="window.open(this.href);return false;
Izmena:
Ako je spisak izraza u posebnoj datoteci, možeš da uradiš nešto poput "for izraz in $(cat datoteka);do sed izraz...;done". Mada to delimično zavisi i od kompleksnosti izraza. Prazni karakter (space) se tumači kao početak novog izraza. Tako da izrazi moraju biti zaokruženi sa dvostrukim navodnicima ako ih sadrže. U osnovi je to to.
Ali što je veća količina izraza to je veća mogućnost da for komanda počne da brlja. Ne znam kakvo je memorijsko ograničenje za broj for izraza.
- Posts: 21
- Joined: 17 Jul 2012, 08:10
Može i ovako jednostavnije:
Code: Select all
sed '
s/pattern/substitute/g
s/pattern1/substitute/g
...
s/pattern1000/substitute/g' fajl1.txt > novifajl1.txt
Who is online
Users browsing this forum: No registered users and 21 guests