mac学习vue被这件事折磨的无路可退(绝了,我通过脚本解决一切)

简介: 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
do
  echo $d
  kill -9 $d
done
zhenghui@192 ~ %

2、想杀死进程时,直接运行

sh ks.sh

进阶(青铜)

zhenghui@192 ~ % cat ks.sh.bak
data=`lsof -i:$1|awk '{print $2}'`
echo "共:$data"
#用于累加计数,用于跳过第一个标题
count=0
for d in $data
do
  if [ "$count" -gt 0 ];then
    echo 正在结束:$d
    kill -9 $d
  fi
  #每次累加1
  count=$((${count}+1))
done

进阶(王者)

zhenghui@192 ~ % cat ks.sh
data=`lsof -i:$1 -t`
echo "共:$data"
for d in $data
do
  echo 正在结束:$d
  kill -9 $d
done
zhenghui@192 ~ %

1、lsof命令常用参数

-a : 结果进行“与”运算(而不是“或”)

-l : 在输出显示用户ID而不是用户名

-h : 获得帮助

-t : 仅获取进程ID

-U : 获取UNIX套接口地址

-F : 格式化输出结果,用于其它命令。可以通过多种方式格式化,如-F pcfn(用于进程id、命令名、文件描述符、文件名,并以空终止)

目录
相关文章
|
2月前
|
监控
【Vue3】学习watch监视:深入了解Vue3响应式系统的核心功能(下)
【Vue3】学习watch监视:深入了解Vue3响应式系统的核心功能(下)
【Vue3】学习watch监视:深入了解Vue3响应式系统的核心功能(上)
【Vue3】学习watch监视:深入了解Vue3响应式系统的核心功能(上)
|
14天前
|
存储 监控 安全
|
1月前
|
JavaScript
vue3学习 ref和reactive的使用
vue3学习 ref和reactive的使用
16 0
|
2月前
|
JavaScript
Vue.js学习详细课程系列--共32节(6 / 6)
Vue.js学习详细课程系列--共32节(6 / 6)
28 0
|
2月前
|
JavaScript
Vue.js学习详细课程系列--共32节(5 / 6)
Vue.js学习详细课程系列--共32节(5 / 6)
30 0
|
2月前
|
JavaScript
Vue.js学习详细课程系列--共32节(4 / 6)
Vue.js学习详细课程系列--共32节(4 / 6)
35 0
|
2月前
|
JavaScript
Vue.js学习详细课程系列--共32节(3 / 6)
Vue.js学习详细课程系列--共32节(3 / 6)
12 0
|
2月前
|
JavaScript
Vue.js学习详细课程系列--共32节(2 / 6)
Vue.js学习详细课程系列--共32节(2 / 6)
30 0
|
2月前
|
Web App开发 移动开发 JavaScript
Vue.js学习详细课程系列--共32节(1 / 6)
Vue.js学习详细课程系列--共32节(1 / 6)
43 0