podręcznik
-p pattern
The file is split whenever an input line matches pattern,
which is interpreted as an extended regular expression. The
matching line will be the first line of the next output file.
This option is incompatible with the -b and -l options.
Kod
seq -w 1 1 10 | gsed ':a;N;$!ba;s/\n//g' | split -p '060'
co tworzy sekwencję od 1 do 10, usuwa puste linie, aby mieć megastring, a następnie dzieli się na 060dwa pliki, które nie dają rezultatu split: invalid option -- 'p'.
Komenda seq -w 1 1 10 | awk -F'060' '{print "field1: "$1 "\nfield2: 060"$2}'w komentarzu daje
pole1: 01 pole2: 060 pole1: 02 pole2: 060 pole1: 03 pole2: 060 pole1: 04 pole2: 060 pole1: 05 pole2: 060 pole1: 06 pole2: 060 pole1: 07 pole2: 060 pole1: 08 pole2: 060 pole1: 09 field2: 060 field1: 10 field2: 060
co nie jest tym czego chcę. Chcę podzielić plik przy znaku 060na dwa pliki. Możesz dołączyć 060do dowolnego pliku.
Jak używać flagi -p w BSD Split w OSX?
man splitdotyczy BSD, podczas gdy mój fakt splitdotyczy GNU.
seqi gsedpoleceń podczas podstawiając awkza split? Następujące dane wyjściowe poleceń to dwa wiersze, jeden jest, field1: 0102030405a drugi jest field2: 0607080910. Polecenie to:seq -w 1 1 10 | gsed ':a;N;$!ba;s/\n//g' | awk -F'060' '{print "field1: "$1 "\nfield2: 060"$2}'
split. Cowhich splitzwraca