Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: JP 03. 09. 2017, 12:26:40
-
Dobry den,
moze mi niekto poradit ako zo suboru odstranit riadok s presne definovanym textom?
Priklad:
textovy subor obsahuje riadky
/mojadresar/podadresar/fotky/priklad1
/mojadresar/podadresar/fotky/
/mojadresar/podadresar/fotky/priklad2
/mojadresar/podadresar/fotky/priklad3
/mojadresar/podadresar/fotky/priklad3
chcem odstranit riadok ktory obsahuje iba text "/mojadresar/podadresar/fotky/" ostatne ostanu zachovane
skusal som funkciu sed aj awk, ale vzdy mi to odstranilo vsetky riadky kedze kazdy obsahuje text "/mojadresar/podadresar/fotky/"
Dakujem za radu
-
V sedu dej do regularu na konec $, to znamena ze ma vyhledavat retezec, ktery konci fotky/ a dal nic neni.
-
grep -Fxv toto-chces-vynechat subor
-F -> berieme string, nie regex
-x -> cely riadok
-v -> vynechat
-
konkretne ted sed:
sed '/^\/mojadresar\/podadresar\/fotky\/$/d'
^ - oznacuje pocatek radku
$ - oznacuje konec radku
vsechny / v ceste je potreba escapovat pomoci \ aby to sed nebral jako svuj oddelovac...
-
Pokud ten textový soubor byl generován příkazem find, mělo by stačit přidat parametr:
find -type f