En travaillant avec la timecommande, je suis tombé sur une situation où je devrais utiliser la commande intégrée timeplutôt que la commande externe GNU time /usr/bin/time. Alors, comment puis-je faire cela? J'ai vu quelque part que l'utilisation enableet / ou commandaiderait, mais ils ne l'ont pas fait.
Ceci est un cas d'utilisation:
watch "time ls"
qui utilise la /usr/bin/timecommande externe , dont je ne veux pas! Cela se produit lorsque timej'appelle la fonction bash interne lorsque j'exécute time lssur 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 timeest plus précis (ce que je veux), mais la commande externe a plus d'options (dont je n'ai pas besoin).
timen'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?