ďťż
 
 
   bash --- sed usunięcie do pierwszego wystąpienia znaku
 
 

Tematy

 
    
 

 

 

 

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.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis