Pelo que entendi, você deseja alterar uma série de arquivos in-loco. Você deseja excluir todos e até incluir a primeira linha que consiste em no total de Abstract . Se esses arquivos estiverem no diretório atual e forem todos nomeados com uma extensão .txt , use:
sed -i '0,/^Abstract$/d' *.txt
Como isso substituirá os arquivos antigos e, caso algo dê errado, não use isso sem ter um backup.
Isso pode exigir o GNU sed (que é padrão no Linux).
Como funciona
-
-iA opção
-iinformasedpara editar arquivos no local. O arquivo antigo será sobrescrito. -
0,/^Abstract$/dEste comando informa
sedpara excluir (d) todas as linhas do primeiro (número 0) até e incluindo a primeira linha que corresponde à expressão regular^Abstract$. O circunflexo,^, corresponde ao início da linha e o cifrão corresponde ao final da linha. Assim, este regex corresponde a uma linha que contém somente a palavraAbstractcom não outros caracteres na linha. -
*.txtIsso diz ao shell para selecionar todos os arquivos no diretório atual que tenham o sufixo
.txt.
Atualizar
Isso excluirá todas as linhas de cada arquivo até a primeira linha que começa com Abstract :
sed -i '0,/^Abstract/d' *.txt
Como o $ foi removido, essa expressão regular exige apenas que a linha comece com Abstract .