Próbuję podzielić duży plik na podstawie wzorca. Używam do tego polecenia awk. Po utworzeniu pewnej liczby plików daje błąd: Zbyt wiele otwartych plików.Komenda powłoki systemu Linux polecenia awk zbyt wiele otwartych plików
polecenia jest następująca:
awk '/pattern here/{i++}{print > "file"i}' /input file
Czy ktoś może mi powiedzieć jak zamknąć te pliki? Próbowałem podążać, ale daje błąd.
awk '/pattern here/{i++}{print > "file"i}' /input file | close("file"i)
Dziękuję.
Trzeba uruchomić 'close' ** ** w awk nie w rurze na wyjściu. Możesz również zajrzeć do 'csplit' zamiast tego. –
Możliwy duplikat [Podziel bardzo duży plik na małe za wzorem (bash)] (http://stackoverflow.com/questions/32228798/divide-very-large-file-into-small-ones-following-pattern-bash) –