다음 형식으로 나타나는 데이터의 텍스트 파일이 있습니다.awk - 3 열 형식으로 출력 출력
apropos c
awk nc
chsh c
date nc
grep nc
i3 nc
ip6tables nc
아래와 같이 awk를 통해이 데이터를 필터링하여 3 열 형식을 생성하려고합니다.
apropos awk chsh
date grep i3
나는 파일에 대한 정보의 두 번째 열을 필요로하지 않지만, 첫 번째 열의 깨끗하고 정렬 된 출력을하고 싶습니다. 다음 코드를 다른 곳에서 찾아서 데이터의 첫 번째 열만 출력하도록 수정했습니다. 문제는 탭 사용으로 인해 잘못 정렬 된 것입니다.
awk '{printf (NR %3 == 0)? $1 "\n" : $1"\t\t" }'
좀 더 연구를하는 I (예. "% -10s") AWK의의 printf를 통해 폭의 사용을 발견했다. 문제는 그것이 내가 원하는대로 할 수 있도록 명령에 통합하는 방법을 잘 모르겠습니다. 어떤 도움을 주시면 감사하겠습니다.
'ip6tables'가 3의 배수가 아니기 때문에 출력에 나타나지 않길 원하십니까? –
출력 할 첫 번째 열을 모두 찾고 있습니다. 그것에 관계없이 3의 배수가됩니다. – barefly
그런 다음 [편집] 예상 출력을 표시합니다. –