echo 로 출력하는 결과물을 파일로 저장하기 - 계속 누적

wolf.bloodstorm의 이미지

오늘 두번이나 질문을 올리게 되네요.
서버 모니터링을 하기 위해서 이리 뛰고 저리 기고 하는 와중에,
차라리 스크립트로 짜는게 더 구체적이고 정확하겠다...싶어서 몇일 동안 삽질을 했습니다.
이제 거의 완성단계인데...

1. TOP 실행시 CPU, MEM 의 총 2개에 대한 조건판단
2. CPU 수치가 높다던지, MEM 의 수치가 이상하다던지...등으로 조건 판단을 하여 PID 를 저장
3. ps ae, ps aex 등으로 나오는 결과를 저장
4. TOP 의 PID 와 ps ae, ps aex 등의 결과의 PID 를 비교 및 출력
이라는 것을 했습니다.
현재 echo 로 화면에 결과물은 나름 깔끔하게 나옵니다.

그래서 질문이...
최종 echo 로 나오는 결과물을 모두 파일 하나에 저장하고 싶습니다.
crontab 에서 돌릴 예정이기 때문에 일종의 로그파일 역활을 하게 하려는 겁니다.
모니터에 나오는 결과물을 파일 하나에 계속 저장하게 하려고 합니다.
logrotate 로 파일 백업을 할 줄은 아니...파일 저장 방법만 확실하게 된다면 끝이라 생각됩니다.

답변 부탁드리겠습니다...(--)(__)

PS.
쉘 스크립트 이기 때문에 그리 좋은 것도 아니니...
미천한 실력이지만 조금 더 테스트를 해보고 공개하겠습니다.

IsExist의 이미지

man script
---------
간디가 말한 우리를 파괴시키는 7가지 요소

첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스

이익추구를 위해서라면..

다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치

---------
간디가 말한 우리를 파괴시키는 7가지 요소

첫째, 노동 없는 부(富)/둘째, 양심 없는 쾌락
셋째, 인격 없는 지! 식/넷째, 윤리 없는 비지니스

이익추구를 위해서라면..

다섯째, 인성(人性)없는 과학
여섯째, 희생 없는 종교/일곱째, 신념 없는 정치

alifegg의 이미지

...음.. 그런데 컨트롤 문자(?)도 모두 저장되는군요

그래도 하나 배웠습니다 ^^

...

ironiris의 이미지

tee 라는 넘이 화면 출력도 하고
파일로 남길수도 있고 편하죠.

다즐링의 이미지

그냥 실행하고...

./a.sh >> server.log 로 하면 안되나요?

크론에 넣을 경우 stderr 가 문제라면.

./a.sh 2>&1 >> server.log 로 하면 됩니다.

stderr 를 stdout 으로 리 다이렉션후에 다시 로그에 저장입니다.

------------------------------------------------------------------------------------------------
Life is in 다즐링

------------------------------------------------------------------------------------------------
Life is in 다즐링

raymundo의 이미지

좀 더 정확히 하자면, 리다이렉트 순서를 반대로 적어줘야죠. (뭐 알고 계시면서 순간 깜박하신 걸로 생각되지만 질문하신 분을 위해서 ^^)

./a.sh >> server.log 2>&1

2>&1 이 먼저 적히면 stderr을 현재의 stdout에 지정된 곳으로 넘기니까 에러는 터미널로 나와버립니다.

좋은 하루 되세요!

다즐링의 이미지

아 ㅠㅠ;;

깜빡했네요 흑.

------------------------------------------------------------------------------------------------
Life is in 다즐링

------------------------------------------------------------------------------------------------
Life is in 다즐링