링크 ux 에서 백업, 교체, tomcat 간단 한 셸 스 크 립 트 를 다시 시작 합 니 다.
최근 에 개발 한 프로젝트 에서 배치 응용 환경 은 Liux, tomcat 8 이 었 습 니 다. 예전 의 프로젝트 는 모두 전문 적 인 실시 인원 이 배 치 를 맡 았 기 때문에 저 에 게 Liux 의 파악 정 도 는 상대 적 으로 낮 았 습 니 다.리 눅 스 학습 노트 - (1) 리 눅 스 달인 육성 계획 I - 토혈 정리 에서 자신의 학습 기록 을 공유 한 적 이 있 지만 실제로 실천 한 적 이 없다.삼가 이 프로젝트 를 통 해 첫 번 째 셸 실전 스 크 립 트 를 연습 합 니 다.
순서
스 크 립 트 를 작성 하기 전에 먼저 명확 한 기능 과 절차 가 있어 야 합 니 다.기능: 원본 war 를 백업 하고 새 war 패 키 지 를 배치 합 니 다.전제: 새 demo. war 패 키 지 는/app/backup 디 렉 터 리 에 업로드 되 었 습 니 다.스 크 립 트 작성 논리:
각본
#!/bin/bash
#
BASEDATE=`date '+%Y%m%d'`
# tomcat
ps -ef|grep tomcat|grep -v grep|awk '{print $2}'|xargs kill -9
# web
backupdir=/app/backup/${BASEDATE}
if [ ! -d "${backupdir}" ]; then
# ,
mkdir -p ${backupdir}
fi
cd ${backupdir}
# ,
if [ ! -f demo.war ]; then
cd /app/apache-tomcat-8.0.51/webapps
echo " war "
cp /app/apache-tomcat-8.0.51/webapps/demo.war ${backupdir}/demo.war
#
if [ $? -eq 0 ];
then
echo " "
# war
rm -f /app/apache-tomcat-8.0.51/webapps/demo.war
else
echo " "
fi
else
echo " , "
# war
rm -f /app/apache-tomcat-8.0.51/webapps/demo.war
fi
# war
mv /app/backup/demo.war /app/apache-tomcat-8.0.51/webapps/demo.war
# tomcat
cd /app/apache-tomcat-8.0.51/bin
sh startup.sh
총결산
셸 스 크 립 트 를 처음 만 들 었 기 때문에 구 덩이 를 밟 았 습 니 다. 이 기록 만:
fi
끝 에 빈 칸 을 하나 더 추가 하여 문법 이 틀 리 고 Liux 빈 칸 이 민감 하 다./bin/bash^M: :
.이 유 는 windows 의 기본 줄 바 꾸 기
\r
이 고 Liux 는
이기 때문에 Liux 에서 바 꾸 는 문 구 를 실행 해 야 합 니 다 sed -i 's/\r$//' demo.sh
또한 이 스 크 립 트 는 완벽 하지 않 습 니 다. 특정한 상황 에서 만 실행 해 야 오류 가 발생 하지 않 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
EC2 인스턴스에 Tomcat 설치전제 조건: Amazon 계정이 있어야 합니다. Amazon 계정에 로그인하고 EC2 인스턴스를 시작합니다. 여기에서 프리 티어를 선택했고 Amazon Linux 2를 실행하는 EC2 인스턴스를 시작했습니다. 시작 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.