unix-sed-Befehl regulären Ausdruck

Kann jemand mir erklären, wie der reguläre Ausdruck funktioniert in der sed-substitute-Befehl.

$ cat path.txt
/usr/kbos/bin:/usr/local/bin:/usr/jbin:/usr/bin:/usr/sas/bin
/usr/local/sbin:/sbin:/bin/:/usr/sbin:/usr/bin:/opt/omni/bin:
/opt/omni/lbin:/opt/omni/sbin:/root/bin

$ sed 's/\(\/[^:]*\).**/\1/g' path.txt
/usr/kbos/bin
/usr/local/sbin
/opt/omni/lbin

Aus der obigen sed-Befehl verwendet, Sie zurück Referenz und speichern Betreiber-Konzept.
Kann jemand mir erklären, wie Sie den regulären Ausdruck vor allem /[^:]* Arbeit in der ersetzen-Befehl, um nur den ersten Pfad, der in jeder Zeile.

sed 's/:.*//' path.txt wäre ein einfacher Befehl.

InformationsquelleAutor Green | 2013-08-06

Schreibe einen Kommentar