发表于: 2020-07-05 21:00:16
1 1304
shell 一款命令语言
有图形界面shel或者命令行式shell
交互式和非交互式shell
重启
#在shell脚本的开头往往有一句话来定义使用哪种sh解释器来解释脚本。
#!/bin/bash
tomcat_home=/local/kencery/tomcat
SHUTDOWN=$tomcat_home/bin/shutdown.sh
STARTTOMCAT=$tomcat_home/bin/startup.sh
case $1 in
start)
echo "启动$tomcat_home"
$STARTTOMCAT
;;
stop)
echo "关闭 $tomcat_home"
PID=`ps aux | grep $tomcat_home |grep java | awk '{print $2}'`
if [ -n "$PID" ]; then
echo "will kill tomcat:$PID"
sh "$tomcat_home/shutdown.sh"
sleep 6
else echo "No Tomcat Process $PID"
fi
PID2=`ps aux | grep $tomcat_home | grep java |awk '{print $2}'`
if [ -n "$PID2" ]; then
kill -9 $PID2
echo "Try to kill $PID2"
else echo "No Tomcat Process $PID2"
fi
;;
restart)
echo "关闭$tomcat_home"
$SHUTDOWN
#grep -v "grep" 在文档中过滤掉包含有grep字符的行
pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'`
kill -9 $pidlist
sleep 5
echo "启动$tomcat_home"
$STARTTOMCAT
;;
esac
部署脚本
#!/bin/bash
tomcat_home=/local/kencery/tomcat
SHUTDOWN=$tomcat_home/bin/shutdown.sh
STARTTOMCAT=$tomcat_home/bin/startup.sh
war=$1
#获取当前的目录
if [ ! -n "${war}" ]; then
echo "***Usage: $0 [project.war]"
exit 0
fi
if [ ! -f "${war}" ]; then
echo "***Error: ${war} does not exist."
exit 0
fi
if [ ! "${war##*.}" = "war" ]; then
echo "***Error: ${war} is not a war file."
exit 0
fi
echo "Deploy ${war##*/}..."
rm -rf /local/kencery/tomcat/webapps/czm/ && unzip -qo ${war} -d /local/kencery/tomcat/webapps/czm/
echo "Restart tomcat..."
$SHUTDOWN
pidlist=`ps -ef |grep tomcat |grep -v "grep"|awk '{print $2}'`
kill -9 $pidlist
rm $tomcat_home/work/* -rf
sleep 5
echo "启动$tomcat_home"
$STARTTOMCAT
扩展
awk怎么使用<br>
1.awk '{[pattern] action}' {filenames} # 行匹配语句 awk '' 只能用单引号<br>
2.awk -F #-F相当于内置变量FS, 指定分割字符
ps -ef和ps -aux的区别
ps -ef 是用标准的格式显示java这个进程
ps-ef执行出来是这样的:UID PID PPID C STIME TTY TIME CMD
ps aux 是用BSD的格式来显示 java这个进程
ps -aux执行出来是:USER , PID , %CPU , %MEM , VSZ , RSS , TTY , STAT , START , TIME , COMMAND
innux怎么给脚本授权?
在当前路径下输入
chmod 777 脚本名
给脚本授权,
然后就可以执行脚本
./脚本名
还有什么权限
777 是最高权限,有读、写、执行权限;和属组用户和其他用户的读、写、执行权限。
-rw------- (600) -- 只有读写权限。
-rw-r--r-- (644) -- 只有有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) -- 只有有读、写、执行权限。
-rwxr-xr-x (755) -- 有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) -- 有读、写、执行权限;而属组用户和其他用户只有执行权限。
vim和vi有什么区别?
它们都是多模式编辑器,不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。
vim的这些优势主要体现在以下几个方面:
1、多级撤消
我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。
2、易用性
vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。
3、语法加亮
vim可以用不同的颜色来加亮你的代码。
4、可视化操作
就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。
5、对vi的完全兼容
某些情况下,你可以把vim当成vi来使用。
vi和vim都是Linux中的编辑器,不同的是vim比较高级,可以视为vi的升级版本。vi使用于文本编辑,但是vim更适用于coding。
vi有3个模式:插入模式、命令模式、低行模式。
插入模式:在此模式下可以输入字符,按ESC将回到命令模式。
命令模式:可以移动光标、删除字符等。
低行模式:可以保存文件、退出vi、设置vi、查找等功能(低行模式也可以看作是命令模式里的)。
明日计划 继续任务2后面
评论