bash script2024. 7. 31. 10:32

awk를 이용해서 특정 위치의 문자열, 또는 문장(행 전체)의 길이를 확인할 수 있다. length() 함수를 이용하면 된다. awk 기본 사용법을 알고 있다면 아래의 예시를 보고 금방 감을 잡을 수 있을 것이다. 

# 세번째 위치에 있는 문자열($3)의 길이 확인
echo "Hello, my name is John." | awk '{ print $3 ":" length($3) }'
name:4

# 행 전체($0)의 길이 확인
echo "Hello, my name is John." | awk '{ print $0 ":" length($0) }'
Hello, my name is John.:23

조건문과 결합해서 사용할 수도 있다. 

# 첫번째 위치의 문자열 길이가 5 이상인 경우에 행 전체 출력
echo "Hello, my name is John." | awk '{ if (length($1)>=5) { print $0 } }'
Hello, my name is John.

 

 

728x90
Posted by 반달가면