Length=$(wc -l < Final.txt)
echo $Length
sed -i "1 i\<records>$Length</records>" Final.txt
Length=$(cat Final.txt|wc -l)
echo $Length
sed -i '1 i\<records>$(echo $Length)</records>' Final.txt
Eu preciso adicionar a linha XXX onde XXX deve ser a variável que representa o no.of linhas.Eu tentei o código acima e outras combinações.Nenhum deles parece funcionar.
Length=$(wc -l < Final.txt)
echo $Length
sed -i "1 i\<records>$Length</records>" Final.txt
sed -i "1 i\<records>$(wc -l Final.txt < Final.txt)</records>" Final.txt
Você não precisa de uma variável intermediária.
Editar: por usuário kamaraj & por usuário comentado DonChrissti, removeu a afirmação de que você precisa do comando cut
, ou alguma outra maneira de analisar o nome do arquivo que wc
produz juntamente com o número de linhas. Um simples redirecionamento de E / S oculta isso de wc
, portanto, sem saber qual arquivo está sendo processado, ele não tem nada para imprimir.
Tags sed