안녕 내 데이터 세트가 나는 세 번째 colmn에 빈이있는 행을 계산하기 AWK 또는 GREP을 사용하려고CSV는 KSH
4,a,1.5
t,6,,
6,t,h
아래 표와 같은 간단 세 번째 열에서 빈 값을 찾을 수 있습니다. 이 경우에는 중간에 하나만 공백이 있기 때문에 1이됩니다. 지금까지 시도한 것은 아래에 있습니다. 로그인은 awk를 사용하여 빈 문자열을 검색 한 다음 grep find와 동일하게 계산합니다. 세 번째 열에 공백이있는 곳을 찾아서 계산합니다.
COUNT=$('awk '' $DATAFILE | wc -l')
COUNT=$('grep -e '.*,.*,,' $DATAFILE' | wc -l)
한 가지를 추가해야합니다. 이것은 스크립트에 있습니다. 그래서 $ 3은 이미 스크립트에 전달되는 변수에 의해 사용됩니다. 해당 매개 변수에 대해 경고하지 않도록 어떻게 변경할 수 있습니까? 이것은 명령 행에서 완벽하게 작동하지만 내 스크립트에서는 작동하지 않습니다. – user3753693
awk 스크립트의 $ 3은 입력의 세 번째 필드입니다. 우연히도 $ 3이라는 쉘 위치 매개 변수와 아무 관련이 없습니다. 당신은 당신이 겪고있는 문제에 대해 더 분명하게해야 할 것입니다. –
은 스크립트에 count = $ "(awk -F, '$ 3 ==" "{C++} END {print c + 0}'$ DATAFILE)"입니다. 그것이 실행될 때 스크립트는 3 달러를 내게 보여준 명령에 $ 3을 넣습니다. – user3753693