我有一个这样的文件:
fail
test1
test2
test3
pass
test1
test2
test3
notrun
test1
test2
test3
请注意,在此文件中始终会有空格。
此文件由bash中的外部脚本自动生成,因此我想将此文件拆分为3个文件,以便更轻松地分析此信息,但我不知道如何。我想在一个文件中抓取所有通过测试,所有在其他文件中的失败测试,而不是在第三个文件中运行测试,我对bash有很好的了解,但我不知道怎么做,甚至你可以显示我是一个更好的方法。 并且必然需要使用bash脚本:)
我将非常感谢您的帮助
答案 0 :(得分:1)
使用awk
与null RS
(记录分隔符):
awk -v RS= 'NF{print > "file" NR}' file
然后验证结果:
cat file1
fail
test1
test2
test3
cat file2
pass
test1
test2
test3
cat file3
notrun
test1
test2
test3