답변1
출력 구문 분석w
어쩌면 그것보다 나을지도 몰라who
. 로그인 시간을 보여주는 대표적인 데이터는 다음과 같습니다.
$ who
tom pts/1 2015-11-15 06:39 (michener:S.0)
$ w
06:40:10 up 1:04, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
tom pts/1 michener:S.0 06:39 2.00s 0.03s 0.00s w
이것들은 것보다 낫다finger
. 이는 강의실 연습이므로 데이터 구문 분석 작업은 OP에 맡겨집니다. 팁으로 awk는 필드를 한 줄 이상으로 인쇄할 수 있습니다.
w
BEGIN
일반적으로 awk 스크립트에 행 번호나 상태를 설정하는 섹션을 포함시켜 출력을 처리할 수 있습니다 .- 그런 다음 각 줄의 기본 동작(패턴 없이 중괄호만 사용)은 줄 번호를 증가시키는 것입니다.
- 줄 번호를 사용하고 첫 번째 줄을 구체적으로 처리합니다(이 경우 건너뛰기: OP).가능한타이틀에 대한 사용자 수를 보고해야 하지만 OP의 예에서는 사용되지 않음)가 있는 행을 건너뜁니다
USER
. - 그 후 OP의 필요에 따라 각 라인을 인쇄할 수 있습니다.
awk
더 이상 데이터가 없으면 종료됩니다. 이 작업을 수행하는 데 사용자 수를 알 필요가 없습니다.
OP에게 통보된 경우사용 who
에는 추가 정보를 나열하는 옵션이 있습니다. 예를 들면 다음과 같습니다.
$ who -l -u
LOGIN tty5 2015-11-15 05:36 3670 id=5
LOGIN tty6 2015-11-15 05:36 3671 id=6
LOGIN tty4 2015-11-15 05:36 3669 id=4
LOGIN tty3 2015-11-15 05:36 3668 id=3
LOGIN tty2 2015-11-15 05:36 3667 id=2
LOGIN tty1 2015-11-15 05:36 3666 id=1
tom pts/1 2015-11-15 06:39 00:06 5780 (michener:S.0)
tom pts/2 2015-11-15 06:52 . 6078 (michener:S.1)
단말기 이름과 로그인 횟수가 다시 표시됩니다.
답변2
Bash 스크립트가 필요하지 않습니다. 손가락 명령을 사용할 수 있습니다. 로그인한 모든 사용자에 대한 완전한 정보를 제공합니다.
터미널을 열고 손가락을 입력하기만 하면 됩니다. 당신은 당신이 필요로하는 것을 얻을 것입니다. 손가락으로 무엇을 할 수 있는지 더 알고 싶다면여기를 읽어보세요