본문 바로가기
IT/리눅스

리눅스 반복 명령어 실행 (while true 반복문)

by JGSHIN 2025. 2. 15.
SMALL

리눅스에서 while true 루프를 사용하면 특정 명령어를 무한 반복하여 실행할 수 있습니다.


1️⃣ while true; do netstat | grep aaa; sleep 1; done;

설명

  • while true; → 무한 루프 실행
  • netstat | grep aaa; → netstat 명령어의 결과에서 "aaa"가 포함된 줄을 필터링하여 출력
  • sleep 1; → 1초 대기 후 다시 실행
  • done; → 루프 종료 (Ctrl + C를 눌러 중지 가능)

💡 사용 예시

  • 특정 포트나 서비스가 열려 있는지 실시간으로 감시할 때 사용

2️⃣ while true; do ls -al; sleep 1; done;

설명

  • while true; → 무한 루프 실행
  • ls -al; → 현재 디렉터리의 파일 목록을 상세히(-al 옵션) 출력
  • sleep 1; → 1초 대기 후 다시 실행
  • done; → 루프 종료 (Ctrl + C로 중지)

💡 사용 예시

  • 특정 디렉터리의 파일이 변경되는지 실시간 모니터링할 때 유용

🔹 while true 반복 실행 중지 방법

Ctrl + C 를 눌러 실행 중인 스크립트를 중지할 수 있습니다.


✅ 추가 활용 예시

  1. 파일 변경 실시간 감시
    • /home/user/logs 디렉터리에서 최근 변경된 파일을 실시간으로 확인
       
      while true; do ls -ltr /home/user/logs; sleep 2; done;
  2. 특정 프로세스 감시
    • nginx 프로세스가 실행 중인지 3초마다 확인
       
      while true; do ps aux | grep nginx; sleep 3; done;
  3. 네트워크 연결 상태 모니터링
    • 포트 80(HTTP)이 열려 있는지 확인
       
      while true; do netstat -an | grep ':80'; sleep 5; done;

🚀 결론

  • while true; do <명령어>; sleep <초>; done; → 특정 작업을 무한 반복
  • 실시간 모니터링이 필요한 경우 유용
  • Ctrl + C 로 중지 가능
LIST
📧 이메일 문의
by @ 2025 JGSHIN