tcsh 쉘 스크립트를 사용하여 input.txt 파일의 각 줄을 읽습니다.
스크립트
#!/bin/tcsh
set out_file_length=`wc -l<$1`
set i=1
while ( $i <= $out_file_length )
set each_line = `head -$i input.txt | tail -1`
echo $each_line
@ i++
end
입력 예: 입력 파일의 행에 #{ 또는 #}가 포함될 수 있으며 이로 인해 내 스크립트가 차단됩니다.
입력.txt
welcome
to
#{
tcsh
#}
programming
이것이 내가 얻는 결과입니다
welcome
to
Missing }.
이 문제를 어떻게 해결할 수 있나요?
답변1
답변을 주신 @Mark Plotnick에게 감사드립니다.
"`head -$i input.txt | tail -1`"
echo $each_line:q
이것은 작동하며 누락된 } 오류가 표시되지 않습니다. 변수로 옮겨서 문자열 비교에 사용할 수 있었습니다.