개요
- bash 무한반복 루프문
- 무한반복 리눅스 스크립트
- bash 무한반복 스크립트
- 리눅스 무한반복 스크립트
- 리눅스 스크립트 백그라운드 실행
while true; do
# 반복 수행할 내용 기입
done
- 위의 코드는 `true` 조건이 항상 참이므로, 루프가 무한히 반복된다.
- 필요에 따라 루프 내용을 추가하고 실행할 코드를 작성할 수 있다.
- 루프를 중지하려면 CTRL+C 키를 눌러 프로세스를 중지한다.
while true; do
date
sleep 1
done
while true; do date; sleep 1; done
while :;do date;sleep 1;done
실습 1: repeat.sh
포어그라운드 실행
- 스크립트 생성 및 확인
[root@zetawiki ~]# echo 'while true; do sleep 1; done' > repeat.sh
[root@zetawiki ~]# cat repeat.sh
#!/bin/bash
while true; do sleep 1; done
- 스크립트 실행
[root@zetawiki ~]# sh repeat.sh
Ctrl+C를 눌러 중지.
백그라운드 실행
- 스크립트 백그라운드 실행. 여러 번 실행 가능.
[root@zetawiki ~]# sh repeat.sh &
[1] 11840
[root@zetawiki ~]# sh repeat.sh &
[2] 11955
[root@zetawiki ~]# sh repeat.sh &
[3] 11959
- → 백그라운드로는 프로세스를 여러개 생성할 수 있다.
- → repeat.sh 프로세스 3개가 백그라운드로 실행되고 있으며 프로세스ID는 11840, 11955, 11959이다.
- 재확인
[root@zetawiki ~]# ps -ef | grep repeat.sh | grep -v grep
root 11840 9100 0 15:14 pts/20 00:00:00 sh repeat.sh
root 11955 9100 0 15:15 pts/20 00:00:00 sh repeat.sh
root 11959 9100 0 15:15 pts/20 00:00:00 sh repeat.sh
- 백그라운드 프로세스 중지
[root@zetawiki ~]# ps -ef | grep repeat.sh | grep -v grep
root 11840 9100 0 15:14 pts/20 00:00:00 sh repeat.sh
root 11955 9100 0 15:15 pts/20 00:00:00 sh repeat.sh
root 11959 9100 0 15:15 pts/20 00:00:00 sh repeat.sh
[root@zetawiki ~]# kill 11840 11955 11959
[1] 종료됨 sh repeat.sh
[2]- 종료됨 sh repeat.sh
[3]+ 종료됨 sh repeat.sh
[root@zetawiki ~]# ps -ef | grep repeat.sh | grep -v grep
- → kill 직후에 종료되었다고 알려 준다.
- → ps로 확인해보면 결과가 없다.
실습 2: sleep
- 포어그라운드 실행
999999일[1] 동안 sleep
[root@zetawiki ~]# sleep 999999d
^C
- 백그라운드 실행
[root@zetawiki ~]# sleep 999999d &
[1] 2647
[root@zetawiki ~]#
[root@zetawiki ~]# kill -9 2647
[root@zetawiki ~]#
[1]+ Killed sleep 999999d
[root@zetawiki ~]#
같이 보기
- Bash while
- 리눅스 yes
- 리눅스 sleep infinity
- 프로세스 여러개 중지
- 리눅스 시간 맞는지 확인
- 리눅스 파일시스템 full 스크립트
- 리눅스 스크립트 백그라운드 실행
- 리눅스 자식생성 스크립트 proliferation.sh
- 리눅스 무한반복 카운트 스크립트 repeat_cnt.sh
- 윈도우 무한반복 스크립트 repeat.cmd
- k8s 이벤트 반복 생성
- 자바스크립트 무한반복
참고
- ↑ 2739년