awk를 사용하여 (때때로) 열의 첫 번째 문자를 제거하는 방법은 무엇입니까?

awk를 사용하여 (때때로) 열의 첫 번째 문자를 제거하는 방법은 무엇입니까?

다음과 같이 명령을 실행하고 awk를 통해 파이프합니다.

mycommand | awk '{print $1,tolower($3),$4}

그러면 다음과 같은 결과가 나옵니다.

fred.o: t .abcdefg 
fred.o: u .rstuvwxy 
fred.o: t .defghi 
fred.o: t .jklmnop 
fred.o: d abcdefg 
fred.o: d zyxwvuts 

보시다시피 세 번째 열에 앞에 "."이 포함되는 경우도 있지만 항상 그런 것은 아닙니다.

awk세 번째 열에 있는 선행 "."을 제거하려면 명령을 어떻게 수정합니까 ? 예를 들어 내 출력이 다음과 같기를 원합니다.

fred.o: t abcdefg  
fred.o: u rstuvwxy  
fred.o: t defghi  
fred.o: t jklmnop  
fred.o: d abcdefg  
fred.o: d zyxwvuts  

답변1

mycommand | awk '{sub(/^\./, "", $4);print $1,tolower($3),$4}'

관련 정보