本人因vscode不知道什么原因control+c不能终止任务(热键冲突或版本原因不确定),所有才想到弄一个全局脚本,方便终止终端运行
下面是执行的方式和结果
具体实现步步骤:
1、创建一个sh脚本(接收端口参数、结束进程)
#!/bin/bash
# 端口
port=$1
# 不包含端口就退出
if [ -z "$port" ]; then
echo "Usage: $0 port"
exit 1
fi
# 查询对应的pid
pid=$(lsof -t -i:$port)
if [ -z "$pid" ]; then
echo "No process listening on port $port"
exit 0
fi
echo "Killing process $pid listening on port $port"
# 结束进程
kill -9 $pid
# 打印结束结果
echo 进程已停止
2、将.sh
脚本复制到 /usr/local/bin/
目录下,此时需要使用 sudo 命令来授权管理员权限。我得脚本为 stop.sh
,则运行以下命令:
sudo cp /Users/zhangwenqi/Desktop/stop.sh /usr/local/bin/
3、添加可执行权限。使用以下命令将 stop.sh
修改为可执行文件:
sudo chmod +x /usr/local/bin/stop.sh
4、在任何地方都可以运行此脚本。可以在终端中运行 stop.sh 命令,无论当前位于何处,系统都知道从 /usr/local/bin/
目录中查找该命令。
如果想从终端中直接运行脚本而无需指定文件扩展名,可以在同一目录下创建一个符号链接
sudo ln -s /usr/local/bin/stop.sh /usr/local/bin/sss