Como sed 's/\[//'
funciona no caso de análise de arquivos de log para os campos de carimbo de data/hora? Encontrei uma solução online e vi esta linha "$(head-1 "$1" | awk '{print $4}'| sed 's/\[//')"
. Alguém pode explicar as funcionalidades de cada um.
registros de amostra,
64.12.96.106 - - [13/Sep/2003:18:02:54 -0600] ... 216.93.167.154 - - [15/Sep/2003:16:30:29 -0600]
Responder1
Como você não forneceu nenhum log específico que está analisando, aqui estão as funcionalidades de cada operação,
head -1 "$1"
: Imprime a primeira linha de FILE, que é passada como argumento$1
awk '{print $4}'
: Imprima a 4ª coluna da saída dehead -1 "$1"
sed 's/\[//'
: remova[
da saída final
Exemplo para 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