本文主要是介绍mac学习vue被这件事折磨的无路可退(绝了,我通过脚本解决一切),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
最近在摸索vue。令我头疼的一件事是,如果以外关闭了启动的服务,就会重新开一个端口,这样很不友好,每次还得重新输入到浏览器上一个新的端口。即使是复制到浏览器的地址栏上,也是很繁琐的。
一遍,一遍,又一遍。
啊啊啊
如下图,第一次启动是3000
无故关闭了,就会重新启动一个新的端口
真的很烦。
今天,我终于受不了啦。
笨人的解决方案
1、先查出来占用端口的PID
zhenghui@192 ~ % lsof -i:3000
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
node 17178 zhenghui 24u IPv4 0xc012b2e327127691 0t0 TCP *:hbci (LISTEN)
zhenghui@192 ~ %
2、使用kill结束进程
kill -9 17178
重复几十遍你试试。
聪明人的解决方法
1、创建一个脚本,内容如下:
zhenghui@192 ~ % cat ks.sh
data=`lsof -i:3000|awk '{print $2}' | sort | uniq -d `
for d in $data
doecho $dkill -9 $d
done
zhenghui@192 ~ %
2、想杀死进程时,直接运行
sh ks.sh
进阶(青铜)
zhenghui@192 ~ % cat ks.sh.bakdata=`lsof -i:$1|awk '{print $2}'`echo "共:$data"#用于累加计数,用于跳过第一个标题
count=0for d in $data
doif [ "$count" -gt 0 ];thenecho 正在结束:$dkill -9 $dfi#每次累加1count=$((${count}+1))
done
进阶(王者)
zhenghui@192 ~ % cat ks.shdata=`lsof -i:$1 -t`echo "共:$data"for d in $data
doecho 正在结束:$dkill -9 $d
donezhenghui@192 ~ %
附
1、lsof命令常用参数
-a : 结果进行“与”运算(而不是“或”)
-l : 在输出显示用户ID而不是用户名
-h : 获得帮助
-t : 仅获取进程ID
-U : 获取UNIX套接口地址
-F : 格式化输出结果,用于其它命令。可以通过多种方式格式化,如-F pcfn(用于进程id、命令名、文件描述符、文件名,并以空终止)
这篇关于mac学习vue被这件事折磨的无路可退(绝了,我通过脚本解决一切)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!