sed 's/\[//'
타임스탬프 필드에 대한 로그 파일을 분석하는 경우 어떻게 작동합니까 ? 온라인에서 해결책을 찾았는데 다음 줄이 보였습니다 "$(head-1 "$1" | awk '{print $4}'| sed 's/\[//')"
. 누군가 각각의 기능을 설명해 주시겠습니까?
샘플 로그,
64.12.96.106 - - [13/Sep/2003:18:02:54 -0600] ... 216.93.167.154 - - [15/Sep/2003:16:30:29 -0600]
답변1
분석 중인 특정 로그를 제공하지 않았으므로 각 작업의 기능은 다음과 같습니다.
head -1 "$1"
: 인수로 전달된 FILE의 첫 번째 줄을 인쇄합니다.$1
awk '{print $4}'
: 출력에서 4번째 열을 인쇄합니다.head -1 "$1"
sed 's/\[//'
:[
최종 출력에서 제거
,sed
rahul@rahul$ sed 's+\[++' <<< "rah[ul"
rahul@rahul$ rahul
# In your case
rahul@rahul$ sed 's+\[++' <<< "[13/Sep/2003:18:02:54 -0600]"
rahul@rahul$ 13/Sep/2003:18:02:54 -0600]
# for hello/world
rahul@rahul$ sed 's+\/++' <<< "hello/world"
rahul@rahul$ helloworld