●▲■ 개발일기

터미널에서 한국시간대(KST)로 로그 남기는 명령어 본문

👉 Shell 스크립트

터미널에서 한국시간대(KST)로 로그 남기는 명령어

●▲■ PRINT 2024. 8. 26. 10:16

터미널에서 서울 표준시간을 적용하여 `index.php`를 실행하고, 로그를 남기는 명령어는 다음과 같습니다:

TZ='Asia/Seoul' /usr/bin/php /path/to/index.php >> /path/to/log/$(TZ='Asia/Seoul' date +%Y%m%d_%H%M).log 2>&1



### 명령어 설명

- `TZ='Asia/Seoul'`: 명령어를 실행할 때 서울 시간대를 설정합니다.
- `/usr/bin/php /path/to/index.php`: PHP 스크립트를 실행합니다. 여기서 `/usr/bin/php`는 PHP 실행 파일의 경로이고, `/path/to/index.php`는 `index.php` 파일의 경로입니다. 실제 경로로 변경해야 합니다.
- `>> /path/to/log/$(TZ='Asia/Seoul' date +%Y%m%d_%H%M).log`: 현재 서울 시간을 기준으로 `YYYYMMDD_HHMM.log` 형식의 파일 이름을 생성하고, 그 파일에 로그를 추가(`>>`)합니다.
- `2>&1`: 표준 오류 출력을 표준 출력과 동일한 파일로 리디렉션합니다. 즉, 오류 메시지도 같은 로그 파일에 기록됩니다.

### 예시

예를 들어, `index.php` 파일의 경로가 `/var/www/myproject/index.php`이고, 로그를 `/var/www/myproject/log/` 디렉토리에 저장하려면 다음 명령어를 사용할 수 있습니다:

```bash
TZ='Asia/Seoul' /usr/bin/php /var/www/myproject/index.php >> /var/www/myproject/log/$(TZ='Asia/Seoul' date +%Y%m%d_%H%M).log 2>&1
```

이 명령어를 터미널에 입력하고 실행하면, 현재 서울 시간 기준으로 로그 파일이 `log` 디렉토리에 생성됩니다. 예를 들어, 2024년 8월 25일 오전 10시 30분에 실행하면 로그 파일은 `20240825_1030.log`라는 이름으로 생성됩니다.

 

 

** 참고로 UTC(국제표준시간)보다 한국시간(KST)는 9시간 빠릅니다. 그래서 UTC+9 요렇게 많이들 씁니다.

UTC와 거의 같은 의미로 쓰이는 평균시가 있는데 바로 GMT(그리니치 천문대 평균시)입니다. 이 시간 체계를 바탕으로 19세기에 UTC가 만들어졌습니다.