

# AWS CLI를 사용한 AWS IoT Jobs SDK 릴리스 예시
<a name="cli_iot-jobs-data-plane_code_examples"></a>

다음 코드 예시는 AWS IoT Jobs SDK 릴리스와 함께 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

*작업*은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.

**Topics**
+ [작업](#actions)

## 작업
<a name="actions"></a>

### `describe-job-execution`
<a name="iot-jobs-data-plane_DescribeJobExecution_cli_topic"></a>

다음 코드 예시에서는 `describe-job-execution`의 사용 방법을 보여줍니다.

**AWS CLI**  
**작업 실행 세부 정보 가져오기**  
다음 `describe-job-execution` 예시에서는 지정된 작업 및 사물의 최근 실행에 대한 세부 정보를 가져옵니다.  

```
aws iot-jobs-data describe-job-execution \
    --job-id SampleJob \
    --thing-name MotionSensor1 \
    --endpoint-url https://1234567890abcd.jobs.iot.us-west-2.amazonaws.com
```
출력:  

```
{
    "execution": {
        "approximateSecondsBeforeTimedOut": 88,
        "executionNumber": 2939653338,
        "jobId": "SampleJob",
        "lastUpdatedAt": 1567701875.743,
        "queuedAt": 1567701902.444,
        "status": "QUEUED",
        "thingName": "MotionSensor1 ",
        "versionNumber": 3
   }
}
```
자세한 내용은 *AWS IoT 개발자 안내서*의 [디바이스 및 작업](https://docs.aws.amazon.com/iot/latest/developerguide/jobs-devices.html)을 참조하세요.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [DescribeJobExecution](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot-jobs-data/describe-job-execution.html)을 참조하세요.

### `get-pending-job-executions`
<a name="iot-jobs-data-plane_GetPendingJobExecutions_cli_topic"></a>

다음 코드 예시에서는 `get-pending-job-executions`의 사용 방법을 보여줍니다.

**AWS CLI**  
**종료 상태가 아닌 모든 사물 관련 작업 목록 가져오기**  
다음 `get-pending-job-executions` 예시에서는 지정된 사물과 관련하여 종료 상태가 아닌 모든 작업의 목록을 표시합니다.  

```
aws iot-jobs-data get-pending-job-executions \
    --thing-name MotionSensor1
    --endpoint-url https://1234567890abcd.jobs.iot.us-west-2.amazonaws.com
```
출력:  

```
{
    "inProgressJobs": [
    ],
    "queuedJobs": [
        {
            "executionNumber": 2939653338,
            "jobId": "SampleJob",
            "lastUpdatedAt": 1567701875.743,
            "queuedAt": 1567701902.444,
            "versionNumber": 3
      }
    ]
}
```
자세한 내용은 *AWS IoT 개발자 안내서*의 [디바이스 및 작업](https://docs.aws.amazon.com/iot/latest/developerguide/jobs-devices.html)을 참조하세요.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [GetPendingJobExecutions](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot-jobs-data/get-pending-job-executions.html)를 참조하세요.

### `start-next-pending-job-execution`
<a name="iot-jobs-data-plane_StartNextPendingJobExecution_cli_topic"></a>

다음 코드 예시에서는 `start-next-pending-job-execution`의 사용 방법을 보여줍니다.

**AWS CLI**  
**사물의 다음 대기 중 작업 실행을 가져오고 시작**  
다음 `start-next-pending-job-execution` 예시에서는 지정된 사물과 관련하여 상태가 IN\$1PROGRESS 또는 QUEUED인 다음 작업 실행을 가져오고 시작합니다.  

```
aws iot-jobs-data start-next-pending-job-execution \
    --thing-name MotionSensor1
    --endpoint-url https://1234567890abcd.jobs.iot.us-west-2.amazonaws.com
```
출력:  

```
{
    "execution": {
        "approximateSecondsBeforeTimedOut": 88,
        "executionNumber": 2939653338,
        "jobId": "SampleJob",
        "lastUpdatedAt": 1567714853.743,
        "queuedAt": 1567701902.444,
        "startedAt": 1567714871.690,
        "status": "IN_PROGRESS",
        "thingName": "MotionSensor1 ",
        "versionNumber": 3
   }
}
```
자세한 내용은 *AWS IoT 개발자 안내서*의 [디바이스 및 작업](https://docs.aws.amazon.com/iot/latest/developerguide/jobs-devices.html)을 참조하세요.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [StartNextPendingJobExecution](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot-jobs-data/start-next-pending-job-execution.html)을 참조하세요.

### `update-job-execution`
<a name="iot-jobs-data-plane_UpdateJobExecution_cli_topic"></a>

다음 코드 예시에서는 `update-job-execution`의 사용 방법을 보여줍니다.

**AWS CLI**  
**작업 실행의 상태 업데이트**  
다음 `update-job-execution` 예시에서는 지정된 작업 및 사물의 상태를 업데이트합니다.  

```
aws iot-jobs-data update-job-execution \
    --job-id SampleJob \
    --thing-name MotionSensor1 \
    --status REMOVED \
    --endpoint-url https://1234567890abcd.jobs.iot.us-west-2.amazonaws.com
```
출력:  

```
{
    "executionState": {
        "status": "REMOVED",
        "versionNumber": 3
    },
}
```
자세한 내용은 *AWS IoT 개발자 안내서*의 [디바이스 및 작업](https://docs.aws.amazon.com/iot/latest/developerguide/jobs-devices.html)을 참조하세요.  
+  API 세부 정보는 *AWS CLI 명령 참조*의 [UpdateJobExecution](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot-jobs-data/update-job-execution.html)을 참조하세요.