在windows+cygwin上使用gnuplot时,有时候gnuplot不会自动退出,导致积累很多进程,使得程序卡顿,因此我写了一个自动搜索当前终端下的指定程序并杀死其进程。如下:
```bash
#!/usr/bin/env bash
cd $(dirname $0)
echo "-------------------- 绘图 --------------------"
function main(){
AutoKill gnuplot
./plot.plt &
echo "[log] 开启新的 gnuplot 进程"
}
#---------------------------------------
#自动杀死包含特定字符的进程
#@param1:进程名或者进程关键字
#---------------------------------------
function AutoKill(){
if [ $# -eq 0 ] ; then
return 2
fi
local src=$(ps -a | grep $1 | awk '{print $1}')
for i in $src
do
#pid=$(echo "$i" | cut -d' ' -f1)
kill -9 $i
local status=$?
if [ $status -eq 0 ] ; then
echo "[log] 发现 '$i' 进程, 已经杀死该进程!"
else
echo "[log] 发现 '$i' 进程, 杀死该进程失败!"
return 2
fi
return 0
done
}
main $*
```
![](https://img.kancloud.cn/e9/a3/e9a3f8494d4b5a94bebb32daf5f915c5_533x152.png)
- 图片处理
- 调整图片像素大小
- Python控制摄像头拍照
- 文件操作
- 提取文件名,扩展名
- 查找文件
- ls列出目录,文件
- shell解析json串
- 读取文件第n行内容
- 将变量写入文件和从文件读取变量的一中方法
- shell操作二进制文件
- 命令行将ppt转换为pdf
- python读取串口数据
- 查最近修改的文件
- awk的一些操作
- 输入输出
- 判断输入是否为数字
- 获取脚本输入的第 i 个参数
- column实现输出列表对齐
- 串口调试脚本
- 按键实时检测
- 网络脚本
- 基于Python的TCP客户端
- bash将字符转换为urlencode
- 挂载远程文件夹到本地
- 其他功能
- shell随机产生某一个范围内的整数
- 删除、替换字符串中指定的字符
- 获取时间日期并打印
- 字符串反转
- 实用功能
- 自定义函数模板
- shell中包含另一个脚本文件实现include的方法
- Bash下实现自定义指令的几种方法
- 根据文件类型自动执行脚本
- 命令行运行matlab
- 项目引导main.sh脚本
- 新建文件模板脚本
- bash实现读取和改写ini文件
- 添加当前路径到fish shell环境变量
- 查询进程并杀死进程
- 带界面的身份验证
- 常用软件
- 基本软件
- 我喜欢的软件
- 自用带有界面的系统修复工具-repair
- 解析xml文件