Puncte:1

Ce program este executat la comanda time?

drapel kr

În terminalul meu din Ubuntu, vreau să execut timp program cu optiune -v, dar nu reușește:

$ timp -v ls
-v: comanda nu a fost găsită

Totuși dacă precizez calea /usr/bin/time al programului ca atare, funcționează:

$ /usr/bin/time -v ls
foo bar baz
        Comanda este cronometrată: „ls”
        Timp utilizator (secunde): 0.00
        ...

Deci se pare că timp și /usr/bin/time sunt executabile diferite. Dar spre surprinderea mea, când încerc să identific timp cu care, spune că este la fel:

$ care oră
/usr/bin/time

Sunt nedumerit, poate cineva să explice ce se întâmplă?
Rezultatul căruia nu este cumva corect?

Puncte:3
drapel ws

Încearcă să alergi tastați ora - probabil că îți va spune asta pe sistemul tău timp este un cuvânt cheie shell (comparați-l cu alte comenzi precum ecou, ls și nano).

Dacă doriți în mod explicit să rulați /usr/bin/time, atunci tastați /usr/bin/time -v ls

Louis Coulet avatar
drapel kr
Da, într-adevăr, ```time``` este un cuvânt cheie shell, nu știam despre acestea, asta e perfid!
drapel ng
Nu este un cuvânt cheie, este un încorporat. Nu există un „cuvânt cheie” într-un shell POSIX. Există *cuvinte rezervate* `!`, `{`, `}`, `case`, `do`, `done`, `elif`, `else`, `esac`, `fi`, `for` ,`if`, `in`, `then`, `until` și `while` care sunt rezervate în toate shell-urile și `[[`, `]]`, `function` și `select` care sunt rezervate în niste scoici. După cum veți observa, „timpul” nu este unul dintre acestea.
drapel ph
@JörgWMittag În bash, este un cuvânt cheie. Consultați [secțiunea Cuvinte rezervate din manualul bash](https://www.gnu.org/software/bash/manual/bash.html#Reserved-Words). Acest lucru permite lucruri precum aplicarea „timpului” [un întreg pipeline](https://www.gnu.org/software/bash/manual/bash.html#Pipelines) (deși acest lucru este dezactivat în modul POSIX).
Puncte:3
drapel ar

Este atât un binar în /usr/bin/time și un Shell încorporat.

timp de tip $
timpul este un cuvânt cheie shell

Incorporațiile Shell au prioritate față de binarele de pe disc. Pentru a utiliza binarul, trebuie să specificați calea, de ex. /usr/bin/time -v ls

The Articol Wikipedia are mai multe informatii despre subiect.

Louis Coulet avatar
drapel kr
Da, într-adevăr, mulțumesc pentru articol.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.