·터미널 명령어

timeout

프로세스·시스템

쓰는 꼴

timeout <duration> <command>

명령에 시간 제한을 걸고 넘기면 끊습니다 — 제한이 걸리면 종료 코드 124가 나오고, 기본 신호는 TERM이라 멈춘 프로그램은 무시할 수 있으니 `-k`로 KILL을 뒤따르게 합니다(GNU coreutils, macOS에는 없습니다).

자주 쓰는 옵션

옵션
30 / 5m / 1hDuration in seconds unless you add s, m, h or d.
-s <SIGNAL>Send something other than TERM when time runs out.
-k 5If the command ignores TERM, send KILL five seconds later.
--preserve-statusExit with the command's own status instead of 124.
exit code 124What timeout returns when it had to stop the command.

예시

timeout 30 curl -s https://example.com

Give up on a hung request after thirty seconds.

timeout -k 5 60 ./import.sh

One 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