Alguém sabe como colocar um comando 'time' antes de cada comando em uma sessão do bash?
command-line
bash
shell
jthoenes
fonte
fonte
Respostas:
Desculpe pela resposta errada antes, não entendi sua pergunta.
Para ter o tempo adicionado antes de cada comando que você executa no shell, você pode fazer algo como isto
Isso religará a chave de retorno. Agora, toda vez que você pressionar return, em vez de escrever uma nova linha \ n, ela irá para o início da linha, digite o texto 'time' e um espaço, vá para o final da linha e digite a nova linha \ n, produzindo assim a desejada efeito.
Se você não quiser sacrificar sua tecla Enter, poderá criar uma segunda chave de referência como F12, vinculando o comando como este
Agora, em vez de substituir a chave de retorno, você vincula F12.
O pano de fundo de tudo isso é que o bash usa a GNU readline para ler comandos. Portanto, o readline seria um bom ponto de partida para mais manipulação de comandos, etc.
fonte
Sei que isso está fora do escopo desta pergunta, mas ...
Em
zsh
(que, é do meu conhecimento, um super conjunto de bash) se você definir a seguinte variável em seu.zshrc
arquivo:Todo comando que leva mais de 5 segundos (tenho certeza) exibirá a saída de
time
. Todos os comandos que são concluídos mais rapidamente não são. E nesses casos, realmente não se importa, por isso é bom não bagunçar as coisas. Também existem muitos outros recursos interessanteszsh
que você pode aproveitar enquanto está nisso.fonte
Inclua \ t na sua string de prompt. Isso incluirá o horário no seu prompt no ponto em que você o incluir. Consulte: http://www.ibm.com/developerworks/linux/library/l-tip-prompt/
fonte
PS1 parece ser a maneira padrão de fazer algo assim.
fonte
time
faz (mede quanto tempo levou para que um comando fosse executado).