Как делают меня время определенная команда?

Нет. Разрешение корневой папки ограничивает дочернее разрешение файлов. Можно попробовать его.

$ mkdir rootdir
$ touch ./rootdir/childfile
$ chmod 777 ./rootdir/childfile
$ chmod 600 rootdir
$ cat ./rootdir/childfile

Я получаю это:

$ cat: ./rootfolder/childfile: permission denied
68
09.02.2016, 01:46
3 ответа

Попробуйте просто time вместо timethis.

Хотя знать, что часто существует оболочка встроенная версия времени и версии двоичных файлов, которая даст результаты в различных форматах:

$ time wget -q -O /dev/null https://unix.stackexchange.com/

real    0m0.178s
user    0m0.003s
sys     0m0.005s

по сравнению с

$ \time wget -q -O /dev/null https://unix.stackexchange.com/
0.00user 0.00system 0:00.17elapsed 4%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+613minor)pagefaults 0swaps

В отличие от Вашей "timethis" программы, Вы возвращаете три значения. Это сломано на то, Что является "системным временем" при использовании "времени" в командной строке, но короче говоря: реальный означает "тактовое стеной время", в то время как пользователь и sys показывают время тактовой частоты ЦП, разделяют между обычным кодом и системными вызовами.

96
27.01.2020, 19:31

При помощи исполняемого файла time вместо встроенной оболочки можно указать выходной формат и значения. Например, получите реальное прошедшее время вместе с названием команды и параметрами

/usr/bin/time --format='%C took %e seconds' sleep 3
sleep 3 took 3.00 seconds

Обратите внимание, что необходимо указать путь для time, еще Вы примете значение по умолчанию к использованию встроенной оболочки.

26
27.01.2020, 19:31
  • 1
    , что: путь важен. Только используйте 'время' в ударе. Вместо этого используйте/usr/bin/time –  CodeFarmer 31.08.2014, 08:06
  • 2
    , каково различие если /usr/bin находится в их ПУТИ? –  galois 11.02.2017, 00:30

@galois :Los diversos shells tienen un puñado de comandos "incorporados -" que tienen prioridad sobre cualquier cosa en la ruta. Normalmente esto es ventajoso; las entradas integradas -tenderán a ejecutarse más rápido (porque no llaman a un archivo externo )y generalmente dan el resultado deseado (, es decir, en el caso del comando de tiempo, normalmente no le importa qué versión está usando, a menos que desee utilizar el indicador "--format" ).

Entonces, "tiempo" sin caracteres especiales (como / )para que parezca una ruta terminará ejecutando el -incorporado, independientemente de cómo se vea su RUTA.

Para obligar al shell a usar el comando de tiempo externo, debe proporcionar la ruta

1
27.01.2020, 19:31

Теги

Похожие вопросы