使用场景:测试人员在功能测试时,都需要更新程序重启项目,如果是tomcat,简单的cd tomcat路径/bin ,再./shutdown.sh,再./startup.sh,感觉也很easy,导致我也用了好几年
进入正题:
下面是我在/home/user1/.bash_profile文件里设置的(如果这个文件找不到,可以自己新建,命令是touch .bash_profile):
alias 1="ps -ef | grep user1|grep tomcat |grep -v grep" #查找tomcat的进程
alias 2="sh /home/user1/kill.sh" #执行kill.sh文件
alias 3="sh /home/user1/webapps/apache-tomcat-6.0.36/bin/startup.sh" #启动tomcat
在 /home/user1/路径下新建kill.sh,内容如下
ps -ef | grep user1|grep tomcat |grep -v grep | awk '{print $2}' |xargs kill -9 #查找进程号并杀掉,其实也可以直接把这句放在2后面,但这里调用了下,便于维护
新增完,运行命令:source .bash_profile 和 source kill.sh
解读:
1、grep -v 666 --------- 输出除666之外的所有行
2、awk '{print $2}' ------ 输出文本中的第二项
3、xargs ----------------- 使用上一个操作的结果作为下一个命令的参数使用
4、source 文件名---------- 读取文件里面的语句依次在当前shell里面执行,否则你执行别名1、2、3的时候会提示你没有权限。修改之后也需要重新执行source
5、ps -ef | grep user1---- 查找用户名为user1的进程
6、sh---------------------- 执行sh格式的文件,后面跟上需要执行的文件的绝对路径
7、定义别名的时候,等号两边不能有空格
alias----------查看当前已设置的别名信息,如下图,我把用户名给模糊了,其中5、6、7就是我用来停止和启动tomcat的命令
另,补充下,我在编辑时遇到的问题,vi不正常退出产生了swp文件,不能再次编辑的问题,依次运行下面的命令
vi -r .bash_profile------- 恢复文件
rm .bash_profile.swp---- 删除.swp文件