pcharley님의 스크립트 backup.sh#!/bin/bash############################### 변수 설정 및 함수 로딩##############################FILESYSTEM= # 마운트할때 파일 시스템을 명시HOST= # 여러 호스트가 NFS 파일시스템에 백업할 경우 중복을 방지하기 위해TERM= # 기간(month, week, day 중 하나로 명시)DIR1= # 백업할 부모 디렉토리(여러 부모 디렉토리를 명시할 수 있다)#DIR2=#DIR3=DIR1_01= # 백업할 장소 명시(여러 부모 디렉토리의 여러 백업 장소를 명시할 수 있다)DIR1_02=DIR1_03=#DIR2_01=#DIR2_02=#DIR2_03=#DIR2_01=#DIR2_02=#DIR2_03=DEV= # 백업 매체 명시. (NFS로 공유되는 파일 시스템을 명시)MNT= # 백업 매체 마운트 포인터 명시ADMIN=root # 결과를 e-mail로 받을 사람DATE1=`date +$HOST-%Y-%m-%d-%H-%M` # file 이름을 정하기 위해DATE2=`date +$HOST-%Y:%m:%d` # 보고서에 들어갈 날짜# Source Functio
#!/bin/bash # df 파티션 85% 이상시 메일 보내기 set -x df |sed /Filesystem/d|awk '$5 >= 85 {print $5,$6}' > /root/dflist x=`awk '{print NR}' /root/dflist` if [ $x -le 1 ] then echo `hostname >> /root/dflist` # echo $x mail jrsim@nayana.com < /root/dflist fi exit 0
bash 스크립트 매뉴얼.. 아주 좋음 http://tldp.org/LDP/abs/html/index.html
YEAR=`date | sed -e 's/./ /g' | awk '{print $1}'` MONTH=`date | sed -e 's/./ /g' | awk '{print $2}'` DAY=`date | sed -e 's/./ /g' | awk '{print $3}'` HOUR=`date | sed -e 's/:/ /g' | awk '{print $5}'` MINUTE=`date | sed -e 's/:/ /g' | awk '{print $6}'` 날짜 와 시간
서버 아이피 구하기 server_ip=`ifconfig | grep Bcast | sed -e 's/:/ /g' | awk '{print $3}'` echo $server_ip
파일이 존재하는지 체크 파일명은 절대경로나 상대경로로 입력하면 된다. if [ -f 파일명 ] then echo "파일이 존재합니다. OK" else echo "파일이 존재하지 않습니다." exit fi
출처 : http://nacarat.tistory.com bash 쉘스크립트로 어떤 옵션 즉 스크립트의 동작을 변경하기 위한 플래그를 사용할 수 있도록 하고 싶다고 하자. 이러한 경우 ${#} 을 사용해 주어진 인수의 갯수를 얻거나 ${1:0:1} 을 사용해 최초 인수의 최초 문자가 「-」인지를 판정 하는 방법으로 직접 자신이 넘길수도 있지만, 자신이 넘기는 경우에는 주어진 옵션이 무엇인지, 인수를 요구하고 있는지 어떤지를 확인하기 위해 if/then 또는 case 등을 사용한 코드를 더할 필요가 있다. 그런데 그 후에 인수를 지정할 필요가 있는 옵션에 대해서 필요한 인수를 사용자가 쓰지 않았을 경우 루틴은 어떻게 될까? 혹은 「-ab」 와 같이 사용자가 2개의 옵션을 함께 지정해서 스크립트를 호출했을 경우에는? 그러한 경우에도 인수를 제대로 넘길수 있을까? 스크립트에 옵션이 필요한 경우는 자주 있는 일이므로 쉘스크립트의 옵션을 넘겨야 하는 경우가 자주 생긴다. 옵션을 넘기는 표준적인 방법은 없는 것일까? 옵션을 넘기는 표준적인 방법은 bash 명령어 「getopts」 를 사용하는 것이다. 아래에 getopts의 메뉴얼 페이지에 실려 있는 예를 약간 나타내
언어별 no-cache 리스트 HTML <META http-equiv="Expires" content="-1"> <META http-equiv="Pragma" content="no-cache"> <META http-equiv="Cache-Control" content="No-Cache"> ASP <% Response.Expires =0 Response.AddHeader "Pragma","no-cache" Response.AddHeader "Cache-Control","no-cache,must-revalidate" %> JSP <% response.setHeader("Cache-Control","no-store"); response.setHeader("Pragma","no-cache"); response.setDateHeader("Expires",0); if (request.getProtocol().equals("HTTP/1.1")) response.setHeader("Cache-Control", "no-cache"); %> PHP <? header("Pragma: no