kill -9 `ps -ef | grep 삭제할프로세스 | grep -v 'grep' | awk '{print $2}'`


'job > etc' 카테고리의 다른 글

ncdu 명령어  (0) 2018.08.31
sed '/^\#/d' 파일 > 파일_주석제거된거  (0) 2018.08.31
tee 명령어  (0) 2018.08.31
리눅스 파일 엔터표시(^M) 없애기  (0) 2018.08.31
grep 색깔 표시  (0) 2018.08.31

리눅스 centos 




tee 명령어




화면 출력과 텍스트 저장을 동시에 하는 명령어




ex)




[root@localhost ~]# free | tee free.txt


             total       used       free     shared    buffers     cached


Mem:       2048132    2036888      11244          0      10640    1783308


-/+ buffers/cache:     242940    1805192


Swap:      1959920     183760    1776160


[root@localhost ~]# cat free.txt 


             total       used       free     shared    buffers     cached


Mem:       2048132    2036888      11244          0      10640    1783308


-/+ buffers/cache:     242940    1805192


Swap:      1959920     183760    1776160








tee 명령어는 로그 저장용? 이라고 생각하면 편하다.




예를들어




make | tee make.txt 라던가




좀 오바한다 싶으면 작업 디렉토리 들어가서 




무슨 명령어를 치든


명령어 | tee 명령어$$.txt




이런식으로 쳐놓으면 내가 입력했던 명령어의 결과들이 전부 저장되니까




커널을 수정하거나 아니면 bashrc 수정(가능한가?)하거나 잘은 모르겠는데 무슨 방법을 쓰면(알아봐야겠다)




작업 디렉토리 하나 생성되고 거기에 자동으로 굳이 tee 명령어 입력을 안해도 tee 명령어`date`.txt 를 만들도록 해놓으면 괜찮을지도 ?

(vi나 crontab 같은 에디터는 뭔가 꼬일듯 하니 제외시키고)

서버 root 홈디렉토리에 .log_history 디렉토리 생성




.bash_profile 에 아래 내용추가






export PS1="\`echo -en \| \\# \|$(tty)\|\t\| >> $HOME/.log_history/history_$(date '+%y%m%d')




echo -en $(date '+%y%m%d')\|$SSH_CLIENT\| >> $HOME/.log_history/history_$(date '+%y%m%d')






history |tail -n 1 >> $HOME/.log_history/history_$(date '+%y%m%d')




echo '[\u@\h \W]\\$ '\`"










그러면 히스토리 확실하게 남길 수 있음






그다음 /etc/profile 에 






NOW=$(date +%Y-%m-%d-%H:%M)


mkdir -p /root/.log_history/$NOW




TTY=`echo $(tty) | awk -F / '{print $3$4}'`


script -q /root/.log_history/$NOW/$TTY




이거 넣어두면 




/root/.log_history/%TTY 에 그사람(pts0,1등등)이 입력했던 명령어, 그 명령어의 결과값까지 저장됨




근데...script 명령어가 완전 실시간이 아니라 한 10초정도 뒤에 입력되는듯 ? exit 명령어를 넣어주면 전부 저장이 되는데 씨큐어,푸티를 종료하는등의 세션을 그냥 꺼버리면 마지막 10초정도는 저장이 안되는듯

+ Recent posts