최근 리눅스 배포판에서 기본으로 설정된 BASH Shell에서는 다양한 기능을 사용할 수 있습니다.
반복문을 사용해서 결과를 얻으려면 기본적으로 쉘 스크립트를 작성해야 하지만 간단한 작업의 경우에는 스크립트를 사용하지 않고 쉘에서 바로 사용할 수도 있기 때문에 알아두면 실무에서 도움이 될 때가 많습니다.
먼저 반복적으로 발생하는 값을 파일에 저장하고 이 값을 가져와서 뭔가 결과를 출력하기 위해서는 아래와 같은 과정을 거치면 됩니다.
쉘에서 현재 열린 파일의 수를 1초 단위로 10 개 저장하기
# for ((i=1;i<=10;i++)); do ps -ef|wc -l >> wc.txt; sleep 1; done; 112 112 112 112 112 112 112 112 112 112
※ for 반복문 형식: for ((i=x;i<=반복할 마지막 수;i++)); do 명령어; done; |
파일에서 합계 구하기
# cat wc.txt | awk '{total+=$1} END {print total}' 1501 |
파일에서 평균 구하기
# cat wc.txt | awk '{sum+=$1; num++} END {print sum/num}' 115.462 |
|