파일을 읽으려면 다음 코드를 사용하고 있습니다.
displayLine(){
echo $line
}
filename="SampleFile"
while read line
do
displayLine $line
done < "$filename"
스크립트를 사용한 후 얻는 파일 형식은 다음과 같습니다.
ID EVENT OK NOK
101 ABC1123 ok nok
101 ABC1223 ok
101 ABC1323 ok nok
101 ABC1423 ok nok
그러나 파일의 실제 형식은 다음과 같습니다.
ID EVENT OK NOK
101 ABC1123 ok nok
101 ABC1223 ok
101 ABC1323 ok nok
101 ABC1423 ok nok
내 스크립트는 어떻게든 단어 사이의 여분의 공백을 잘라냅니다. 그러나 파일의 실제 형식을 원합니다.
누구든지 이것을 달성하는 방법을 말해 줄 수 있습니까?
감사해요! !
답변1
변수를 참조하고 IFS=
다음과 같이 read와 함께 사용하십시오.
displayLine(){ printf '%s\n' "$line"; }
filename="infile"
while IFS= read -r line
do
displayLine "$line"
done < "$filename"