timeout
프로세스·시스템
쓰는 꼴
timeout <duration> <command>명령에 시간 제한을 걸고 넘기면 끊습니다 — 제한이 걸리면 종료 코드 124가 나오고, 기본 신호는 TERM이라 멈춘 프로그램은 무시할 수 있으니 `-k`로 KILL을 뒤따르게 합니다(GNU coreutils, macOS에는 없습니다).
자주 쓰는 옵션
| 옵션 | 뜻 |
|---|---|
| 30 / 5m / 1h | Duration in seconds unless you add s, m, h or d. |
| -s <SIGNAL> | Send something other than TERM when time runs out. |
| -k 5 | If the command ignores TERM, send KILL five seconds later. |
| --preserve-status | Exit with the command's own status instead of 124. |
| exit code 124 | What timeout returns when it had to stop the command. |
예시
timeout 30 curl -s https://example.comGive up on a hung request after thirty seconds.
timeout -k 5 60 ./import.shOne minute to finish politely, then five seconds before KILL.
무엇이 돌고 있고 무엇이 자원을 먹는지 봅니다. 죽이기 전에 무엇인지 확인하는 것이 순서입니다.
읽는 방법
- 대괄호 [ ]는 넣어도 되고 안 넣어도 되는 자리입니다.
- 점 셋 …은 여러 개를 이어 쓸 수 있다는 뜻입니다.
- 옵션은 대소문자를 가립니다 — -r과 -R이 다른 명령도 있습니다.
자주 묻는 것
Q. timeout은 무엇을 하나요?
명령에 시간 제한을 걸고 넘기면 끊습니다 — 제한이 걸리면 종료 코드 124가 나오고, 기본 신호는 TERM이라 멈춘 프로그램은 무시할 수 있으니 `-k`로 KILL을 뒤따르게 합니다(GNU coreutils, macOS에는 없습니다).
Q. 어떻게 치나요?
timeout <duration> <command> — 대괄호는 생략할 수 있는 자리입니다.
Q. 옵션은 몇 개나 자주 쓰나요?
여기 정리한 것은 5개입니다. 전체 목록은 man timeout에 있습니다. 이 명령은 프로세스·시스템 갈래입니다.
같이 보는 명령
man 페이지: man timeout