/ / Como remover uma linha de um arquivo no bash? - bash, unix

Como remover uma linha de um arquivo no bash? - bash, unix

Eu tenho um arquivo chamado tmp que contém 4 strings:

dirs
f1
f2
f3

Eu quero ficar com

f1
f2
f3

Que comando bash me ajuda a fazer isso? (Apenas bash por favor, não sed ou awk.)

Respostas:

2 para resposta № 1

Você poderia usar:

grep -v "dirs" tmp

o -v argumento de grep negará a correspondência, ou seja, excluirá qualquer correspondência dirs do arquivo tmp

Ou se você queria um puro bash solução:

while read -r line
do
if ! [[ $line =~ "dirs" ]]
then
echo $line
fi
done < tmp

1 para resposta № 2

Uma das muitas maneiras é usar rabo:

tail -n 3 tmp

0 para resposta № 3

expressão regular com grep:

grep "f" tmp> name_of_output_file

ou

grep "[^" dirs "]" tmp> name_of_output_file

trabalhe para mim