gnome-terminal -t “test” -x bash -c "sh ./run.sh;exec bash;"
打开一个新终端,-t为title,-x后为在新终端执行的命令,exec bash为执行完不关闭新窗口。
ps -ef|grep nginx|grep -v grep|awk ‘{print $2}’|xargs kill -9解析
ps ax查询当前所有进程
ps -ef|grep nginx 查询nginx进程
ps -ef|grep nginx|grep -v grep|awk ‘{print $2}’ 获取第二个参数
grep -v 不包含
4.ps -ef|grep nginx|grep -v grep|awk ‘{print $2}’|xargs kill -9
xargs 将前面获取到的进程号通过空格分割,传递给kill -9,杀死所有进程
kill —INT = Ctrl+C ,**‘—’**为中文格式
关于shell的变量
export语句
将环境变量写入启动文件的方法
/etc/profile
source /etc/profile
shell自动修改文件方法
sed -i -e ‘s|BOOTPROTO=none|BOOTPROTO=dhcp|’ conf.txt
i 是直接修改文件,文件名可以放到命令最后
-e ’s|aaa|bbb|’ 把aaa替换成bbb
自动化项目脚本
#!/bin/bash
gnome-terminal -t “1” -x bash -c “bash ./run1.sh;exec bash;”
gnome-terminal -t “2” -x bash -c “bash ./run2.sh;exec bash;”
gnome-terminal -t “3” -x bash -c “bash ./run4.sh;exec bash;”
echo “"
echo “#cmd instruction”
echo “‘1’ work-1 stop”
echo “‘2’ work-2 stop”
echo “‘3’ work-3 stop”
echo “‘all’ all works stop”
echo “‘ctrl+c’ exit”
echo "”
while [ ‘1’ = ‘1’ ]
do
read -p "Please input a cmd: " str
if [ “$str” = ‘1’ ]; then
echo “work-1 stop successfully”
tmp=ps -ef | grep run1.sh| grep -v grep | awk '{print $2}'
echo ${tmp}
kill -9 ${tmp}
fi
if [ "$str" = '2' ]; then
echo "work-2 stop successfully"
tmp=`ps -ef | grep run2.sh| grep -v grep | awk '{print $2}'`
echo ${tmp}
kill -9 ${tmp}
fi
if [ "$str" = '3' ]; then
echo "work-3 stop successfully"
tmp=`ps -ef | grep run4.sh| grep -v grep | awk '{print $2}'`
echo ${tmp}
kill -9 ${tmp}
fi
if [ "$str" = "all" ]; then
echo "All works stop successfully"
tmp=`ps -ef | grep run1.sh| grep -v grep | awk '{print $2}'`
echo ${tmp}
kill -9 ${tmp}
tmp=`ps -ef | grep run2.sh| grep -v grep | awk '{print $2}'`
echo ${tmp}
kill -9 ${tmp}
tmp=`ps -ef | grep run4.sh| grep -v grep | awk '{print $2}'`
echo ${tmp}
kill -9 ${tmp}
fi
done
赋值与相等
在shell中赋值无空格,相等符号为等号两边各有一空格