Немного сложного варианта, однако это работает вполне прилично.
head -2 file
join <(grep "Xm Gen CDS" file | cat -n) \
<(grep "Xm Gen extracted region" file | cat -n) | \
sed 's/^[0-9]* //;s/CDS [0-9]*\s[0-9]*\(\s.*interval="\([0-9]*\)\s<-\s\([0-9]*\)\)/CDS\t\2\t\3\t\1/;s/ Xm Gen extracted.*//'
grep "Xm Gen extracted region" file
выполнять его как сценарий оболочки
#!/bin/bash
FILE="$1"
head -2 "$FILE"
join <(grep "Xm Gen CDS" "$FILE" | cat -n) \
<(grep "Xm Gen extracted region" "$FILE" | cat -n) | \
sed 's/^[0-9]* //;s/CDS [0-9]*\s[0-9]*\(\s.*interval="\([0-9]*\)\s<-\s\([0-9]*\)\)/CDS\t\2\t\3\t\1/;s/ Xm Gen extracted.*//'
grep "Xm Gen extracted region" "$FILE"
chmod +x scriptname
и выполнитесь как./scriptname file_with_data
. – rush 05.07.2012, 22:10