Isso excluirá as dez primeiras linhas de todos os arquivos cujos nomes variam de file00 a file99 :
sed -i.bak -n '11,$p' file[0-9][0-9]
Isso pode exigir o GNU sed , que é conhecido como gsed no OSX. Para outros seds, tente:
find file[0-9][0-9] -maxdepth 0 -type f -exec sed -i.bak -n '11,$p' {} \;
Como funciona:
-
-i.bakinforma ao sed para modificar os arquivos no local, criando um arquivo de backup com a extensão .bak -
-ndiz ao sed para não imprimir nenhuma linha, a menos que seja explicitamente solicitada. -
11,$pinforma ao sed para imprimir linhas iniciando com o número de linha 11 e continuando até a última linha (denotada$) no arquivo. -
file[0-9][0-9]é um shell glob que será expandido para corresponder a todos os arquivos cujos nomes consistam emfileseguido por dois dígitos.
Alternativa
A lógica pode ser invertida. Em vez de imprimir explicitamente as linhas 11 e depois, poderíamos (dica: JigglyNaga) excluir as dez primeiras linhas:
sed -i.bak '1,10d' file[0-9][0-9]