2012-04-10 2 views
1

텍스트 파일을 읽고 각 줄을 문자열에 저장하는 스크립트를 작성하려고합니다. 또한 해시 기호로 시작하는 줄을 건너 뛰는 스크립트를 원합니다. 어떤 제안?KornShell (ksh)을 통해 '#'으로 시작하는 텍스트 파일의 줄 건너 뛰기

+0

백만 줄이 있다면 ... 백만 줄을 썼을까요? – Vijay

+1

아니오 백만 줄이 없기 때문에 나는 그들을 쓰지 않을 것입니다. 나는 또한 하나의 문자열에서와 같이 문자열을 말했습니다. – TomSelleck

답변

3

줄 건너 뛰기를 ksh으로 두어서는 안됩니다. 예 : 다음을 수행하십시오 :

grep -v '^#' INPUTFILE | while IFS="" read line ; do echo $line ; done 

그리고 echo 부분 대신 원하는 부분을 수행하십시오.

또는 ksh 경우

이 구문을 지원하지 않습니다 : "파일 이름 패턴"또는

grep -v '^#' INPUTFILE > tmpfile 
while IFS="" read line ; do echo $line ; done < tmpfile 
rm tmpfile 
+0

제안 해 주셔서 감사합니다. '표준 출력에 오류가 발생하여 파이프가 닫힙니다.'라는 아이디어가 있습니까? – TomSelleck

+0

후자의 해결책을 시도하고 모두 잘 작동합니다. – TomSelleck

2
while read -r line; do 
    [[ "$line" = *()#* ]] && continue 
    # do something with "$line" 
done < filename 

모습을 KSH 남자 페이지에서 "이름 생성 파일".