![나는 이것이 IP와 사용자 이름을 인쇄한다는 것을 알고 있지만 누군가 나에게 그것을 설명해 줄 수 있습니까? 매우 간단합니다. 감사합니다! 유닉스](https://linux55.com/image/200638/%EB%82%98%EB%8A%94%20%EC%9D%B4%EA%B2%83%EC%9D%B4%20IP%EC%99%80%20%EC%82%AC%EC%9A%A9%EC%9E%90%20%EC%9D%B4%EB%A6%84%EC%9D%84%20%EC%9D%B8%EC%87%84%ED%95%9C%EB%8B%A4%EB%8A%94%20%EA%B2%83%EC%9D%84%20%EC%95%8C%EA%B3%A0%20%EC%9E%88%EC%A7%80%EB%A7%8C%20%EB%88%84%EA%B5%B0%EA%B0%80%20%EB%82%98%EC%97%90%EA%B2%8C%20%EA%B7%B8%EA%B2%83%EC%9D%84%20%EC%84%A4%EB%AA%85%ED%95%B4%20%EC%A4%84%20%EC%88%98%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F%20%EB%A7%A4%EC%9A%B0%20%EA%B0%84%EB%8B%A8%ED%95%A9%EB%8B%88%EB%8B%A4.%20%EA%B0%90%EC%82%AC%ED%95%A9%EB%8B%88%EB%8B%A4!%20%EC%9C%A0%EB%8B%89%EC%8A%A4.png)
이것이 IP와 사용자 이름을 인쇄한다는 것을 알고 있지만 누군가 나에게 간략하게 설명해 줄 수 있습니다. 감사합니다! 유닉스
w -hs|awk '{printf "%s\t%s\n",$1,$3}'
답변1
w -hs
- 누가 시스템에 로그인했지만 사용하고 있는지 출력합니다.-hs출력을 더 깔끔하게 만드는 플래그
그런 다음 결과는 출력 형식을 지정 하는 데 사용되는 개체 w -hs
로 파이프 됩니다.awk
printf
%s
TAB을 나타내는 형식 지정자입니다 \t
. \n
개행 문자를 나타냅니다. 이 후에는 $1
및 가 있습니다 $3
. 따라서 이 모든 것은 awk '{printf "%s\t%s\n",$1,$3}'
출력의 첫 번째와 세 번째 문자열을 인쇄하고 그 사이에 탭 문자를 넣은 다음 결과를 개행 문자로 인쇄하는 것을 의미합니다.
나에게 이것은 사용하는 것과 동일합니다.awk '{print $1, "", $3}'
답변2
그것을 파괴:
먼저 "파이프" 기호를 확인하세요 |
. 이것은 우리에게 이것이두 부분주문하다:산출추가 처리를 위해 첫 번째 명령의 내용이 w -hs
두 번째 명령으로 "전달"됩니다 awk '{printf "%s\t%s\n",$1,$3}'
.
첫 번째 명령은 w -hs
시스템에 로그인한 사람에 대한 정보를 출력합니다( man w
자세한 내용은 참고자료 참조). 이 예에서는 출력 형식을 지정하기 위해 두 가지 옵션 -h
및 가 추가되었습니다. -s
자세한 내용은 COMMAND-LINE OPTIONS
의 섹션을 참조하십시오 man w
. 더 나은 방법은 터미널에 이 명령을 입력하고 확인하는 것입니다.
의 출력 w -hs
은 로 "파이프"됩니다 . 즉 , 의 출력에서 작동 awk
한다는 의미입니다 .awk
w -hs
awk
텍스트 처리에 일반적으로 사용되는 언어입니다. man awk
자세한 내용을 확인하거나 awk
인터넷의 수많은 튜토리얼 중 하나에서 자세히 알아보세요. awk
코드가 꽤밀집한, 이를 이해하려면 약간의 연구가 필요할 수 있습니다.
이것표현하다 '{printf "%s\t%s\n",$1,$3}'
awk
파이프로 연결된 데이터로 무엇을 해야 할지 알려줍니다 w -hs
. 요약하면 이러한 지침은 다음과 같습니다.
,를 사용하여 printf
필드(또는 열) 1과 3( )의 값을 탭( )으로 구분된 "문자열"로 인쇄한 $1,$3
다음 끝에 "줄바꿈"( )을 추가합니다.%s
\t
\n
이는 간략한 요약 awk
이므로 많은 중요한 세부정보가 생략되어 있습니다. 귀하의 관심사나 직무 설명에 더 자세한 내용이 필요한 경우 awk
다양한 온라인 자료나 인쇄본 자료를 참조하십시오.