En travaillant avec la time
commande, je suis tombé sur une situation où je devrais utiliser la commande intégrée time
plutôt que la commande externe GNU time /usr/bin/time
. Alors, comment puis-je faire cela? J'ai vu quelque part que l'utilisation enable
et / ou command
aiderait, mais ils ne l'ont pas fait.
Ceci est un cas d'utilisation:
watch "time ls"
qui utilise la /usr/bin/time
commande externe , dont je ne veux pas! Cela se produit lorsque time
j'appelle la fonction bash interne lorsque j'exécute time ls
sur un terminal, comme ceci:
$ time ls
Veuillez noter que la demande opposée exacte a été répondue ici:
Il y a beaucoup de différence avec deux commandes. L'intérieur time
est plus précis (ce que je veux), mais la commande externe a plus d'options (dont je n'ai pas besoin).
time
n'est pas une fonction intégrée bash
, c'est un mot réservé du langage, vous pouvez donc chronométrer les pipelines (comme time foo | bar
) ou les commandes composées (comme time for i in...;done
)
watch 'bash -c "builtin time ls"'
peut-être?