로그 show 명령 출력 작업

로그 show 명령 출력 작업

다음은 macOS high Sierra에서 실행되는 명령입니다.

**`Command`**

 log show --info --predicate 'process="jamf" and eventMessage contains "Informing the JSS about login for user"' --start 2019-04-25|awk '{printf "%s %s %s %s %s %s %s %s %s %s %s %s %s \n", $1,$2,$4,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18}'|sed '1d'|column -t -s " "|grep -v "Informing  the  JSS  about  login  for  user  root"

Output:

 log: warning: ./system_logs.logarchive present but reading from system log store.

2019-04-25  09:49:26.843101+0530  Default  jamf:  [com.jamf.management.binary:all]  Informing  the  JSS  about  login  for  user  swastibhushandeb
2019-04-25  20:14:47.928848+0530  Default  jamf:  [com.jamf.management.binary:all]  Informing  the  JSS  about  login  for  user  swastibhushandeb

Desired Output:

2019-04-25  09:49:26.843101+0530  Default  jamf:  [com.jamf.management.binary:all]  Local Login for user  swastibhushandeb 
2019-04-25  20:14:47.928848+0530  Default  jamf:  [com.jamf.management.binary:all]  Local Login for user  swastibhushandeb 

내가 아는 한, Informing the JSS about login for user swastibhushandeb다음 명령을 사용하여 ""를 바꿀 수 있습니다.sed 's/Informing the JSS about login for user swastibhushandeb/Local Login for user swastibhushandeb/'

  1. 그러나 사용자 이름은 시나리오에 따라 다를 수 있으므로 "Informing the JSS about login for user swastibhushandeb"사용자 이름이 포함된 특정 필드를 선택하고 바꾸는 방법은 무엇입니까?
  2. 다음을 사용하여 열 머리글을 출력에 삽입하는 방법awk begin

개선 사항/샘플 코드에 대한 제안을 환영합니다.

답변1

첫 번째 질문에 대한 답변은 다음과 같습니다.

sed 's/Informing  the  JSS  about  login  for  user/Local Login for user'

올바른 명령을 제안했지만 대체할 필요가 없습니다 username. 다른 단어로 바꾸세요.

두 번째 질문에는 더 자세한 내용을 제공해야 합니다.

답변2

다음 명령을 통해 출력을 파이프하십시오.

경고 줄 로그: warning:을 제거하고 언급한 헤더를 추가했습니다. 모든 작업은 awk로 수행되었으며 올바른 공간 형식을 갖습니다.

주문하다

awk 'BEGIN{print "Date Time Type bundle Logininformation"}NR >1{gsub("Informing\t  the  JSS  about","Local",$0);print $0}' k.txt|sed '/^$/d'| awk '{printf "%30s%30s%30s%30s%30s\n",$1,$2,$3,$4,$5}'| awk '$0 !~/^$/{print $0}'

산출

awk 'BEGIN{print "Date Time Type bundle Logininformation"}NR >1{gsub("Informing\t  the  JSS  about","Local",$0);print $0}' k.txt|sed '/^$/d'| awk '{printf "%30s%30s%30s%30s%30s\n",$1,$2,$3,$4,$5}'| awk '$0 !~/^$/{print $0}'
                          Date                          Time                          Type                        bundle              Logininformation
                    2019-04-25          09:49:26.843101+0530                       Default                         jamf:[com.jamf.management.binary:all]
                    2019-04-25          20:14:47.928848+0530                       Default                         jamf:[com.jamf.management.binary:all]

관련 정보