我有一个文本文件,
!--- Marker one --!
aaaa
bbbb
cccc
dddd
!--- Marker two --!
eeee
ffff
!--- Marker three --!
gggg
hhhh
iiii
我需要使用 Bash 从标记二(直到标记二的末尾)复制到一个新文件中。
!--- Marker two --!
eeee
ffff
成为一个单独的文件。
最佳答案
哇
$ awk '/Marker two/{f=1;print;next}f&&/Marker/{exit}f' file
!--- Marker two --!
eeee
ffff
庆典
#!/bin/bash
flag=0
while read -r line
do
case "$line" in
*"Marker two"*)
flag=1; echo $line;continue
esac
case "$flag $line" in
"1 "*"Marker"* ) exit;;
"1"* ) echo $line;;
esac
done <"file"
种子
$ sed -n '/Marker two/,/Marker three/{/Marker three/!p}' file
!--- Marker two --!
eeee
ffff
关于bash - 将一个部分复制到一个新文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3393423/