안녕하세요, while 루프에서 다음과 같은 문제가 있습니다. 마지막 줄을 읽지 못합니다.
while IFS= read -r line
do
echo $line
done<file_ref_col_master.txt
입력 파일
FILE_ID~col_POS~COL_START_POS~COL_END_POS~datatype~delimitted_ind~col_format~columnlength
5~4~~~char~Y~\"[a-z][email protected]\"~100
5~1~~~char~Y~[0-9]+~100
전류 출력
sh -x sample1.sh
+ dos2unix /test/data/infa_shared/dev/SrcFiles/datawarehouse/poc_anjali/file_ref_col_master.txt
dos2unix: converting file /test/data/infa_shared/dev/SrcFiles/datawarehouse/poc_anjali/file_ref_col_master.txt to Unix format ...
+ n=0
+ IFS=
+ read -r line
+ echo FILE_ID~col_POS~COL_START_POS~COL_END_POS~datatype~delimitted_ind~col_format~columnlength
FILE_ID~col_POS~COL_START_POS~COL_END_POS~datatype~delimitted_ind~col_format~columnlength
+ IFS=
+ read -r line
+ echo '5~4~~~char~Y~\"[a-z][email protected]\"~100'
5~4~~~char~Y~\"[a-z][email protected]\"~100
+ IFS=
+ read -r line
답변1
파일의 마지막 줄은 개행 문자로 끝나지 않습니다.
이 문제를 해결하다
printf "\n" >>file_ref_col_master.txt