Linux/Ubuntu

linux log 생성하기

jinmc 2020. 12. 8. 15:09
반응형

m.blog.naver.com/ice0423/221932781410

 

리눅스에서 로그는 정말 중요한 도구입니다.

리눅스 자체에서 echo를 사용하여 출력을 할 수도 있고, python 파일을 실행할 때 print를 하는것도 

파일에 저장할 수 있다면 그걸 나중에 볼 수 있기 때문에, 훨씬 좋다고 봅니다.

 

로그를 저장하는 방법은 간단합니다.

> 한개는 파일 생성, (덮어쓰기)

>> 두개는 파일 에 붙여쓰기 입니다.

 

$ python3 file.py > file.log # file.log 있을 경우 지우고 새로 생성
$ python3 file.py >> file.log # file.log 있을 경우 그 이후 붙여씀

 

joonyon.tistory.com/98

 

쉽게 설명한 nohup 과 &(백그라운드) 명령어 사용법

안녕하세요. 린아저씨 입니다. 리눅스를 사용하다 보면 프로그램을 백그라운드에서 세션과의 연결이 끊어져도 돌려야할 일이 많이 발생합니다. 그럴때 주로 사용하는 명령어가 바로 nohup 과 &

joonyon.tistory.com

하지만 파일을 기록하면서도 실시간으로 그 결과를 보고 싶을 때가 있습니다.

또한, 이 둘을 한꺼번에 하고 싶을 수도 있죠.

그럴 때 사용하는게 nohup과 & 입니다.

& 는 그저 백그라운드에 돌리는 용도이고, 

nohup은 daemon에서 돌기 때문에 죽지 않는다고 합니다.

그래서 결국 둘을 같이 사용하는 방법을 많이 이용합니다.

 

$ nohup python3 file.py >> file.log & # nohup 과 백그라운드 돌리기
$ tail -f file.log # log 실시간으로 보기

 

아 그리고 나서 이제 끄려면, jobs 를 실행하여 프로세스를 보고, 

kill을 이용하여 프로세스를 종료할 수 있습니다.

아니면 ps -ef 옵션을 이용할 수도 있습니다.

 

$ jobs # 현재 터미널에서 진행중인 프로세스를 보여줍니다 (백그라운드, 포그라운드 모두)
$ ps -ef | grep file.py # file.py를 포함하는 프로세스를 보여줌
$ kill % # 퍼센트 뒤에 작업번호 넣으면 프로세스를 중단합니다. 안넣으면 순서대로 제거

 

반응형