|
bash --- sed usunięcie do pierwszego wystąpienia znaku
painspr - 09-04-2008 18:41
Witam Mam pytanie dotyczące sed. Jak z jego pomocą usunąć wszystko do pierwszego wystąpienia danego znaku w linii? Np.: linia: thttpd.log.9.gz:207.46.98.33 /site/cdlinux/iso/extras/cdlcenter-isomaker.sh 200
i chcę aby usunęło wszystko do pierwszego ":". Dalej mogą być kolejne bo może być adres IPv6
Pozdrowienia Paweł
thalcave - 09-04-2008 19:43
cat plik | sed s/.*://g
painspr - 09-04-2008 22:12
w przypadku takiej linii
thttpd.log.7.gz:2001:4070:2:0:202:b3ff:fe98:99e6 /site/cdlinux/iso/v0.5/cdlinux-maly-0.5.8.iso
zostaje to 99e6 /site/cdlinux/iso/v0.5/cdlinux-maly-0.5.8.iso
thalcave - 10-04-2008 00:10
Może troche nie eleganckie, ale działa: cat plik | cut -d: -f2-100
painspr - 10-04-2008 01:30
dzięki to działa, mam jeszcze jedno pytanie. Jak zrobić żeby zostały linie które kończą się tylko na .iso ?
salmon - 10-04-2008 12:11
cat plik | grep .iso
painspr - 11-04-2008 02:08
dzięki ale to wyszuka .iso gdziekolwiek i w dodatku . to znaczy dowolny znak, ale już doszedłem do tego, jakby ktoś chciał :
grep "\.iso$" plik
zanotowane.pldoc.pisz.plpdf.pisz.plminister.pev.pl
|