---
title: "명령 실행"
description: "Alpacon 서버에서 exec로 명령어를 실행하는 방법을 살펴봅니다. 작업에 맞는 접속 방식과 계정을 선택하고, 감사 기록과 실시간 활동에서 결과를 확인하세요. 명령줄과 스크립트의 입력 제한, 실시간 출력과 저장된 결과의 차이, 실행 시간과 대기 시간을 구분해 작업을 준비하세요."
---

> Full documentation index: https://docs.alpacax.com/llms.ko.txt

# 명령 실행

터미널 입력 없이 끝나는 명령은 `alpacon exec`로 실행합니다.

## 명령 실행 방법 선택

`alpacon exec`는 터미널 입력 없이 끝낼 수 있는 명령어에 적합합니다. 서비스 상태를 확인하거나, 서버의 출력을 가져오거나, 자동화 스크립트를 실행할 때 쓰세요. [명령 실행하기](/use/work-sessions/commands/run/)부터 시작하고, 내용을 검토받아야 하는 스크립트에는 [검증된 파일 실행](/use/work-sessions/commands/file-execution/)을 쓰세요.

## 명령 실행과 웹 터미널 비교

| 필요한 작업 | `alpacon exec` | Websh |
| --- | --- | --- |
| 명령어 실행 후 결과 확인 | 비대화형 실행, stdin 입력 없음 | 대화형 터미널 |
| 프롬프트에 응답하거나 터미널 프로그램 실행 | Websh 사용 | 터미널 입력 지원 |
| 작업 세션 기능 | 명령 실행(`command`) | 웹 터미널(`websh`) |
| AI 에이전트 접속 | 에이전트 작업 세션에서 명령어 실행 가능 | 에이전트 작업 세션에 Websh를 포함할 수 없음 |
| 토큰 인증 | 자동화에는 서비스 토큰 사용 | 토큰으로 대화형 터미널을 열 수 없음 |

대화형 작업은 [Websh](/use/work-sessions/terminal/)를 참고하세요.

## 실행에 필요한 권한

브라우저로 로그인했다면 대상 서버와 명령 실행 기능(`command`)이 포함된 활성 [작업 세션](/use/work-sessions/)을 선택하세요. 세션에서 허용하는 계정으로 실행해야 합니다. 에이전트 작업 세션은 승인받은 계정으로만 실행할 수 있습니다.

서비스 토큰은 작업 세션 없이 비대화형 명령어를 실행할 수 있으며, 토큰의 범위와 명령어 ACL이 적용됩니다. 새 개인 API 토큰에는 명령어 실행이나 파일 전송 범위를 부여할 수 없습니다. 해당 범위를 이미 가진 토큰은 작업 세션 없이 계속 사용할 수 있습니다. 자동화와 CI에는 [서비스 토큰](/use/iam/applications/service-tokens/)을 쓰세요.

## 결과 확인

[**명령 기록**](/use/audit/events/commands/)에서 요청자, 서버, 계정, 결과와 **거절 이유**를 확인할 수 있습니다. 작업 세션의 **기록** 탭에도 실행 내역이 표시되며, 항목을 펼치면 결과를 볼 수 있습니다. CLI에서는 `alpacon exec ls`로 명령어를 찾고 `alpacon exec logs JOB_ID`로 결과를 조회하세요.

[실시간 활동](/use/live-activity/)에는 실행 중인 명령어 출력의 마지막 16,384자가 표시됩니다. 명령어 결과는 최대 1 MiB까지 저장됩니다. 출력이 이보다 길면 중간 부분이 생략되고 처음과 끝이 남습니다. 생략된 위치에는 표시가 붙습니다.

## 제한

| 한도 | 값 |
| --- | --- |
| 명령줄 | 명령줄은 최대 2048자입니다. 명령줄을 줄이거나 스크립트를 검증된 파일로 실행하세요. |
| 실행 목적(`--purpose`) | 최대 2000자이며, 이를 넘으면 거부됩니다. 이 명령어를 실행하는 이유를 제한 안에서 작성하세요. |
| 스크립트 내용(`--file`) | 내용이 있는 UTF-8 스크립트여야 하며, 최대 65,536바이트(64 KB)입니다. 스크립트를 나누거나 별도 파일에서 데이터를 읽도록 작성하세요. |
| 파일 실행 명령줄 | 인터프리터, 스크립트 경로, 인수를 합쳐 2048자 이내여야 합니다. 경로나 인수를 줄이세요. 큰 입력은 스크립트가 파일에서 읽도록 하세요. |
| 실시간 출력 | 실시간 활동에는 출력의 마지막 16,384자가 표시됩니다. 더 많은 출력을 보려면 저장된 명령어 결과를 여세요. |
| 저장된 결과 | 최대 1 MiB입니다. 더 긴 출력은 중간을 생략하고 처음과 끝을 남깁니다. 큰 결과를 빠짐없이 보관하려면 명령어가 서버의 파일에 기록하도록 하세요. |
| 실행 시간 | 서버에서 명령어를 실행할 수 있는 시간은 최대 30분입니다. 30분 안에 끝나지 않는 작업은 나누어 실행하세요. |
| 포그라운드 대기 | 수신 확인 또는 전달 후 10분 동안 결과가 없으면 포그라운드 exec는 응답 없음으로 판단하고 종료 코드 1로 끝납니다. 서버의 명령어는 최대 30분까지 계속 실행됩니다. 약 10분을 넘길 수 있는 작업에는 `--detach`와 `alpacon exec logs JOB_ID`를 쓰세요. |
| CLI 상태 대기(`ALPACON_EXEC_TIMEOUT`) | CLI가 실행 중 상태를 받지 못할 때 기다리는 시간이며 기본값은 `30m`입니다. 진행 중 상태를 받을 때마다 대기 시간이 다시 시작됩니다. 실행 시간 제한은 아닙니다. CLI가 대기를 끝내도 명령어는 취소되지 않습니다. 다시 제출하기 전에 작업을 확인하세요. |
| 승인 대기(`--wait-approval`) | 승인 대기 시간의 기본값은 5분이며 `30m` 같은 기간을 지정할 수 있습니다. CLI에서 승인을 기다리려면 `--wait` 또는 `--wait-approval`을 쓰세요. |

Source: https://docs.alpacax.com/ko/use/work-sessions/commands/
