Como posso cortar o personagem de “Thu Jun 2 08:11:53 PDT 2016” de modo a exibir apenas 08 11

1

Como posso cortar o personagem de "Qui Jun 2 08:11:53 PDT 2016" de modo a exibir apenas "08 11"

    
por Aditya Rawas 02.06.2016 / 09:22

4 respostas

4

cut -d ' ' -f 4 | cut -d : -f 1,2 | tr : ' '

Ou:

awk -F '[ :]' '{print $4, $5}'

Ou:

sed 's/.* \(..\):\(..\):.*/ /'

Se você o tiver em uma variável, com shells POSIX, você pode fazer:

string='Thu Jun 2 08:11:53 PDT 2016'
IFS=': ' # split on colon and space
set -f   # disable glob
set -- $string # use the split+glob operator (unquoted variable)
h_m="$4 $5"
    
por 02.06.2016 / 09:26
3

Se for uma saída simples do comando date , você poderá executar date com alguns parâmetros para gerar exatamente o que deseja:

date '+%H %M'

Se for um arquivo ou uma variável, você pode usar cat ou echo e usar cut , awk ou sed como os outros mencionaram.

    
por 02.06.2016 / 09:47
0

Se for um arquivo, use isso

# cat file
Thu Jun 2 08:11:53 PDT 2016
# cat file |  awk '{print $4}' | awk -F : '{print $1 " " $2}'
08 11
    
por 02.06.2016 / 09:33
0

Assumindo que esta é a saída de date ou um programa similar, de modo que a largura da string permaneça constante:

cut --output-delimiter=" " -c 11-12,14-15
    
por 02.06.2016 / 11:44