Linuxpia/Linux 명령어

[리눅스 명령어] cron을 관리하는 명령어, crontab

Linuxpia4U 2023. 8. 11. 06:17
반응형

crontab

`crontab`은 리눅스에서 정기적인 작업을 스케줄링하는 데 사용되는 명령어입니다. `crontab`은 "cron table"의 약자로, `cron`은 유닉스 계열 시스템에서 시간 기반 잡 스케줄러를 가리킵니다.

`crontab` 명령어는 다양한 옵션과 함께 사용됩니다:

- `-l`: 현재 사용자의 crontab을 출력합니다.
- `-e`: 현재 사용자의 crontab을 편집합니다.
- `-r`: 현재 사용자의 crontab을 삭제합니다.

`crontab` 파일에는 각 줄마다 하나의 작업이 있으며, 각 줄은 다음의 6개 필드로 구성됩니다:

 

*     *     *   *    *        command to be executed
-     -     -   -    -
|     |     |   |    |
|     |     |   |    +----- day of week (0 - 6) (Sunday=0)
|     |     |   +------- month (1 - 12)
|     |     +--------- day of month (1 - 31)
|     +----------- hour (0 - 23)
+------------- min (0 - 59)



예를 들어, 매일 오전 5시에 `myscript.sh`를 실행하려면 crontab에 다음과 같은 줄을 추가할 수 있습니다:

 

0 5 * * * /path/to/myscript.sh



이 작업은 `myscript.sh` 스크립트를 매일 오전 5시에 실행합니다.


사례

매일 오전 5시에 홈에 있는 source 방의 dir 디렉터리를 '/var/backups/easyfly'에 백업한다고 가정합시다. 아래와 같은 자신의 홈디렉터리의 해당 내용을 매일 백업할 수 있습니다.

 

crontab의 내용은 다음과 같습니다.

myscript.sh 내용은 다음과 같습니다.

여기서 '/home/easyfly'는 사용자의 홈디렉터리입니다. '/var/backups'는 파일을 백업하는 시스템의 디렉터리입니다.

반응형