읽기 루프 문제 동안

읽기 루프 문제 동안

스크립트에서 발견됨

{while read logfilename rest

do

LogFileSize=`wc -c $logfilename | awk '{print $1}'`

....

..........

done < /tmp/filelist
}

rest뭔지 잘 모르겠는데 설명해주실 분 계신가요?

답변1

while read루프 에서 :

단어 분할과 마찬가지로 행은 첫 번째 단어가 첫 번째 NAME에 할당되고 두 번째 단어가 두 번째 NAME에 할당되는 등의 필드로 분할됩니다.마지막 NAME에 할당된 나머지 단어.

이는 입력 내용이 다음과 같다는 것을 의미합니다.

name1
name2 foo
name3

그리고 당신은 다음을 수행하고 있습니다.

while read logfilename

두 번째 반복에서는 logfilename변수가 로 설정됩니다 'name2 foo'.

따라서 사람들이 발생할 수 있는 잠재적으로 원치 않는 입력을 수집하기 위해 "쓰레기" 변수를 만드는 것이 비교적 일반적인 관행입니다. 이 변수는 스크립트에서 사용되지 않을 수도 있지만 logfilename잘못된 데이터를 얻지 않도록 하기 위한 것입니다.

관련 정보