![Perl을 사용하여 패턴을 기반으로 파일을 여러 파일로 분할하는 방법은 무엇입니까? [폐쇄]](https://linux55.com/image/45781/Perl%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%8C%A8%ED%84%B4%EC%9D%84%20%EA%B8%B0%EB%B0%98%EC%9C%BC%EB%A1%9C%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%97%AC%EB%9F%AC%20%ED%8C%8C%EC%9D%BC%EB%A1%9C%20%EB%B6%84%ED%95%A0%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%ED%8F%90%EC%87%84%5D.png)
Perl을 사용하여 패턴을 기반으로 파일을 여러 파일로 분할하는 방법은 무엇입니까?
예를 들어 입력은 .txt 파일이고 출력 파일의 이름은 다른 .txt 파일에 저장됩니다.
답변1
여기서는 패턴이 나타날 때마다 새 파일이 열립니다 /8/
.
$ seq 30 | perl -pe 'BEGIN{open STDOUT, ">", "file" . ++$n}
open STDOUT, ">", "file" . ++$n if /8/'
$ ls
file1 file2 file3 file4
$ paste *
1 8 18 28
2 9 19 29
3 10 20 30
4 11 21
5 12 22
6 13 23
7 14 24
15 25
16 26
17 27