리눅스 명령어 · 2 min read · Feb 02, 2026

리눅스 타임아웃 명령어 초보자를 위한 설명 (예제 포함)

때때로 리눅스에서 명령어를 실행할 때, 정해진 시간 동안만 실행하고 싶을 수 있습니다. 이를 위해 특별히 개발된 명령줄 유틸리티인 timeout이 존재합니다. 이 기사에서는 이해하기 쉬운 몇 가지 예제를 사용하여 이 명령어의 기본 사항을 논의할 것입니다.

하지만 그 전에, 이 튜토리얼의 모든 예제가 Ubuntu 18.04 LTS 머신에서 테스트되었다는 점을 언급할 가치가 있습니다.

리눅스 타임아웃 명령어

이름에서 알 수 있듯이, 리눅스의 타임아웃 명령어는 시간 제한을 두고 명령어를 실행할 수 있게 해줍니다. 다음은 그 구문입니다:

timeout [OPTION] DURATION COMMAND [ARG]...

그리고 이 도구의 매뉴얼 페이지는 다음과 같이 설명합니다:

timeout - run a command with a time limit  
Start COMMAND, and kill it if still running after DURATION

다음은 이 도구가 어떻게 작동하는지에 대한 더 나은 아이디어를 제공할 수 있는 Q&A 스타일의 예제입니다.

Q1. 타임아웃 명령어를 어떻게 사용하나요?

기본 사용법은 매우 간단합니다 - 입력으로 타임아웃 값을(초 단위로 간주) 지정하고 실행하고자 하는 명령어를 입력하여 ‘timeout’을 실행하면 됩니다.

예를 들어, 5초 후에 ping 명령어를 타임아웃하고 싶다면, 다음과 같이 타임아웃을 사용할 수 있습니다.

timeout 5 ping google.com

Q2. 명령어의 종료 상태를 출력으로 얻으려면 어떻게 하나요?

기본적으로, 타임아웃 명령어가 성공하면 종료 상태로 124를 반환합니다. 다음은 예제입니다:

첫 번째 경우에는 타임아웃 명령어가 성공적으로 실행되었고, 보시다시피 종료 상태는 124였습니다. 그러나 두 번째 실행에서는 Ctrl+C를 사용하여 명령어를 강제로 종료시켰고, 이 경우 종료 상태는 0이었습니다.

하지만 타임아웃이 성공적으로 실행되더라도 입력 명령어의 상태를 반환하도록 하려면, –preserve-status 명령줄 옵션을 사용해야 합니다.

예를 들어:

timeout --preserve-status 5 ping google.com

Q3. 타임아웃이 보내는 신호를 변경하려면 어떻게 하나요?

타임아웃이 입력 명령어에 신호를 보내어 마감 시간이 다가올 때 실행을 중지하도록 하는 것은 자명합니다. 기본적으로 SIGTERM이 명령어에 의해 사용됩니다.

그러나 원한다면, 타임아웃이 보내는 신호를 변경할 수 있습니다. 이를 위해 -s 명령줄 옵션을 사용하고 타임아웃이 보낼 신호를 입력으로 지정해야 합니다.

예를 들어:

timeout -s SIGKILL [COMMAND]

보낼 수 있는 신호 목록을 가져오려면 다음 명령어를 실행하세요:

kill -l

Q4. 타임아웃이 자동으로 KILL 신호를 보내도록 하려면 어떻게 하나요?

때때로, 타임아웃이 초기 신호를 보낸 후에도 계속 실행되는 입력 명령어를 만날 수 있습니다. 이러한 경우를 위해 타임아웃은 ‘–kill-after’ 옵션을 제공합니다.

매뉴얼 페이지는 다음과 같이 설명합니다:

-k, --kill-after=DURATION  
            also send a KILL signal if COMMAND is still running  
            this long after the initial signal was sent

보시다시피, 이 신호가 언제 보내질지를 타임아웃에 알려주기 위해 기간을 지정해야 합니다.

결론

당신이 하는 일의 종류에 따라, 타임아웃 명령어는 꽤 유용한 도구가 될 수 있습니다. 이 튜토리얼에서는 이 유틸리티가 제공하는 대부분의 옵션을 논의했습니다. 이 연습을 마친 후, 타임아웃에 대해 더 배우고 싶다면 매뉴얼 페이지로 가보세요.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.