Cite suas variáveis e use IFS=
com read, como este:
displayLine(){ printf '%s\n' "$line"; }
filename="infile"
while IFS= read -r line
do
displayLine "$line"
done < "$filename"
Estou lendo um arquivo usando o seguinte código:
displayLine(){
echo $line
}
filename="SampleFile"
while read line
do
displayLine $line
done < "$filename"
O formato do arquivo que estou obtendo depois de usar o script é este:
ID EVENT OK NOK
101 ABC1123 ok nok
101 ABC1223 ok
101 ABC1323 ok nok
101 ABC1423 ok nok
Mas o formato atual do arquivo é assim:
ID EVENT OK NOK
101 ABC1123 ok nok
101 ABC1223 ok
101 ABC1323 ok nok
101 ABC1423 ok nok
Meu script de alguma forma está aparando os espaços extras entre as palavras. No entanto, quero o formato atual do arquivo.
Alguém poderia me dizer como conseguir isso?
Obrigado !!
Cite suas variáveis e use IFS=
com read, como este:
displayLine(){ printf '%s\n' "$line"; }
filename="infile"
while IFS= read -r line
do
displayLine "$line"
done < "$filename"
Tags bash linux scripting shell-script