Portál AbcLinuxu, 8. května 2025 00:19
--------------- obsah souboru: # komentare nevim na kterem radku zacinaji # komentare # komentare ani kolik radku jsou dlouhe prikazy prikazy prikazy prikazy prikazy prikazy prikazy prikazy prikazy # komentare prikazy # komentare ------------------- jak vytisknu prvni komentare? tj. tiskni vsechny radky zacinajici # kdyz uz radek nezacina # skonci nejlepe pomoci sedu nebo shellu
$ sed -n "/^#/,$ p" soubor.txt | sed "/\(^[^#]\)\|\(^$\)/,$ d" # komentare nevim na kterem radku zacinaji # komentare # komentare ani kolik radku jsou dlouhe
sed '/^\([^#]\|$\)/Q' soubor.txt
sed '/^[^#]/Q' soubor.txt
sed
nestačí, alespoň ne u mne. Tobě to dávalo korektní výsledek? Takto to už vyhovuje podmínce zadání (Tvůj sed
jsem dal místo mého druhého sed
u):
$ sed -n "/^#/,$ p" soubor.txt | sed '/^\([^#]\|$\)/Q' # komentare nevim na kterem radku zacinaji # komentare # komentare ani kolik radku jsou dlouhe
sed
em:sed -n '/^#/,${/^\([^#]\|$\)/Q;p}'
#!/usr/bin/env python found = False for line in file('soubor.txt'): line = line.strip() if line.startswith('#'): print line if not found: found = True else: if found: break
perl -ne '/^#/..eof and (/^(?:[^#]|\s*$)/ and last or print)'
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.