![전체 명령 경로를 지정하지 않고 상세 모드에서 time 명령을 사용할 수 없는 이유는 무엇입니까?](https://linux55.com/image/71429/%EC%A0%84%EC%B2%B4%20%EB%AA%85%EB%A0%B9%20%EA%B2%BD%EB%A1%9C%EB%A5%BC%20%EC%A7%80%EC%A0%95%ED%95%98%EC%A7%80%20%EC%95%8A%EA%B3%A0%20%EC%83%81%EC%84%B8%20%EB%AA%A8%EB%93%9C%EC%97%90%EC%84%9C%20time%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%EC%82%AC%EC%9A%A9%ED%95%A0%20%EC%88%98%20%EC%97%86%EB%8A%94%20%EC%9D%B4%EC%9C%A0%EB%8A%94%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
주어진...
~$ which time
time is a shell keyword
time is /usr/bin/time
이것이 작동하는 이유는 무엇입니까?
~$ /usr/bin/time --verbose ./some_script.sh
Command being timed: "./some_script.sh"
User time (seconds): 0.00
System time (seconds): 0.01
Percent of CPU this job got: 51%
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:00.03
Average shared text size (kbytes): 0
Average unshared data size (kbytes): 0
Average stack size (kbytes): 0
Average total size (kbytes): 0
Maximum resident set size (kbytes): 4572
Average resident set size (kbytes): 0
Major (requiring I/O) page faults: 1
Minor (reclaiming a frame) page faults: 1548
Voluntary context switches: 3
Involuntary context switches: 7
Swaps: 0
File system inputs: 48
File system outputs: 0
Socket messages sent: 0
Socket messages received: 0
Signals delivered: 0
Page size (bytes): 4096
Exit status: 0
왜 안되나요?
~$ time --verbose ./some_script.sh
--verbose: no se encontró la orden
real 0m0.124s
user 0m0.101s
sys 0m0.022s
답변1
경로를 지정하지 않고 명령을 호출하면 해당 명령 대신 동일한 이름을 가진 다른 쉘 별칭, 함수 및 내장 기능이 호출됩니다. 이 행동은POSIX에 의해 정의됨.
외부 명령을 호출하려면 time
다음을 사용할 수 있습니다.주문하다:
command time --verbose cmd
답변2
/usr/bin/time과 셸에 내장된 시간은 완전히 다른 구현이기 때문입니다. 분명히 help time
셸에 내장된 사용법을 얻으려면 실행하세요 .man time
/usr/bin/time