Portál AbcLinuxu, 21. prosince 2025 09:40
--------------- 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 sedu):
$ sed -n "/^#/,$ p" soubor.txt | sed '/^\([^#]\|$\)/Q' # komentare nevim na kterem radku zacinaji # komentare # komentare ani kolik radku jsou dlouhe
sedem: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.