zsh 'time' não funciona com 'source' [duplicate]

0
    

Esta pergunta já tem uma resposta aqui:

    
  •              'time echo' não tem saída                                      2 respostas                          
  •     

Eu posso usar time para obter estatísticas de tempo de execução:

% time zsh --version
zsh 5.6.2 (x86_64-pc-linux-gnu)
zsh --version  0.00s user 0.00s system 86% cpu 0.005 total

Como posso tempo quanto tempo um script de origem demora para ser executado?

% time source $NVM_DIR/nvm.sh
%
    
por Tom Hale 28.10.2018 / 09:22

1 resposta

0

Parece que zsh não suporta comandos de tempo embutido.

Tente usar um shell que inclua suporte para time como palavra reservada (isso se aplica a zsh ). e também oferece suporte a comandos internos de tempo (isso não se aplica a zsh ).

BTW: isso funciona para ksh88 , ksh93 , bosh (a atual Bourne Shell), mksh e bash .

BTW: A maneira correta de fazer o tempo é pegar o tempo para o shell e todos os seus subprocessos (que podem ser chamados de programas) e para imprimir a diferença de antes e depois do comando. Se o tempo incluir o tempo gasto no próprio shell, isso permite programar os comandos incorporados.

O pano de fundo é que o tempo que funciona dentro do shell deve ser compatível com o que o comando time externo faz e o comando time externo imprime a soma de todos os tempos de todos os processos criados para um comando específico. Se time não incluísse os valores para subprocessos, por exemplo, imprima valores muito baixos para o comando cc , pois a maior parte do trabalho é feita dentro de subprocessos de cc .

    
por 28.10.2018 / 09:48

Tags