我最近一直在处理一些文件处理,我正在尝试编写一个bash one-liner,它看起来像:
zcat largefile.gz | split_by_delimiter_into_separate_files
我尝试的事情:
zcat largefile.gz | awk '{print $0 " //"> "separate_file" NR}' RS='//'
我想要拆分的分隔符是“//”。我知道像python这样的东西可能会把它解决成几行,但我的项目不是基于python的,所以这不是一个选项..
答案 0 :(得分:2)
试试这样:
zcat largefile.gz | awk -vRS='//' '{print $0 " //"> "separate_file" NR}'
答案 1 :(得分:0)
您可以使用我认为完全符合您需要的split
:
zcat largefile.gz | split -p '//' - separate_file_
将创建带有separate_file_
前缀的文件,其内容为large file
,分为//