Portál AbcLinuxu, 7. listopadu 2025 17:12
vstup: 2007-02-08T07:34:04 vystup: 2007-02-08-07:34:04 jde to nejak pomoci sedu nebo awk pres regularni vyrazy neco jako s/[1-9]T[1-9]/&-&/g ?
sed 's/([1-9])T([1-9])/\1-\2/' nebo tak nejak...
echo "2007-02-08T07:34:04" | sed -e 's/\([0-9]\{2\}\)T\([0-9]\{2\}\)/\1-\2/'
2007-02-08-07:34:04
Ale verim, ze to pujde nejak elegantneji...
\{2\} tam byt nema...
).
Jinak [0-9]{2} znamena "dve cislice", ty \ jsou escape znaky...
Diky.
Ale to {2} je asi jen u sedu, znam totiz jen *,+,?
sedu je \{2\} stejně jako třeba ve vimu a v perlu je {2} a v grepu je to nebo ono podle toho jaky se použije přepínač. Ostatně i ve vimu to jde různě přepínat. Rozhodně to ale není jen u sedu.
tr "T" "-" Pouze pro tento pripad
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.