사용자가 입력한 명령이 실행되어 결과가 출력될 때까지 기다려야 하는 포그라운드 방식으로 처리되는 프로세스
이런 방식을 작업 제어에서는 포그라운드 작업이라고 한다.
sleep 100 -> 포그라운드 작업
sleep 명령이 끝날 때까지 기다려야 한다.
명령을 실행하면 명령의 처리가 끝나는 것과 관계 없이 곧바로 프롬프트가 출력되어 사용자가 다른 작업을 계속할 수 있는 프로세스
이런 방식을 작업 제어에서는 백그라운드 작업이라고 한다.
명령어 뒤에 & 를 붙여 실행하면 백그라운드 작업이 된다.
sleep 100 & - > 백그라운드 작업
바로 다른 명령어 실행 가능
명령어 jobs를 통해 백그라운드 작업을 모두 볼수 있으며, 특정 작업 번호를 지정하면 해당 작업의 정보만 보여준다.
jobs [%작업 번호]
Ctrl+z -> 포그라운드 작업을 정지함(종료가 아닌 잠시 중단)
bg [%작업 번호] -> 작업 번호가 지시하는 작업을 백그라운드 작업으로 전환
fg [%작업 번호] -> 얘는 포그라운드로 전환시킴
Ctrl+c -> 포그라운드 작업 종료
kill --> 백그라운드 작업 종료
포그라운드 작업은 Ctrl + c 를 입력하면 ^C 출력과 함께 대부분 종료된다
백그라운드 작업은 kill 명령으로 강제 종료 해야한다
kill -9 PID 또는 %작업번호
특정한 시간에 작업을 수행하도록 예약할 수 있는 두가지 방법
예약한 명령을 저해진 시간에 실행해준다.
at [옵션] 시간
at 명령어를 사용하려면 아래 명령어를 이용하여 설치해야 한다.
sudo apt-get install at
at 명령으로 정해진 시간에 명령을 실행하도록 하려면 at 명령 뒤에 시간을 명시해야 한다.
at 07:00 pm
# at> 실행할 명령을 지정
at> /bin/ls -l ~ubuntu > ~ubuntu/at.out
# Ctrl+d 로 종료하면 아래와 같이 출력 되면 예약을 완료하게 된다.
at> <EOT>
daemon 그룹의 사용자는
/var/spool/cron/atjobs 디렉터리에서 내용 확인이 가능하다.
sudo ls -l /var/spool/cron/atjobs
# at 작업 목록 확인 -l 옵션, atq
at -l
atq
# at 작업 삭제 -d 옵션, atrm
at -d 작업 번호
atrm 작업번호
crontab [-u 사용자 ID ] [옵션] [파일]
옵션
crontab 파일 형식
| 분(0~59) | 시(0~23) | 일(1~31) | 월(1~12) | 요일(0~6) | 작업 내용 |
|---|

EDITOR=vi;export EDITOR
crontab -u ubuntu -e
30 23 1 * * /bin/ls -l ~ubuntu > ~ubuntu/cron.out
sudo ls -l /var/spool/cron/crontabs
crontab -l
crontab -r