Ubuntu-Shell图形化工具
脚本中加入更多的图形元素。
KDE和GNOME桌面环境都扩展了dialog命令,包含了可以在各自环境下生成X Window 图形化部件的命令。
kdialog和zenity包,它们各自为KDE和GNOME桌面提供了图形化窗口部件
1.查看内核版本命令:
cat /proc/version
uname -a
2.查看桌面版本
01.pgrep是linux中常用的通过程序名称来查询进程的工具,一般是用来判断程序是否正在运行及查找正在运行进程的PID信息。通过pgrep命令,可以只指定进程的一部分名称从运行进程队列中进行查看进程的PID信息,但只输出PID号,不便于理解。
可以结合‘-l’选项在显示PID的同时也显示这个进程的名称
pgrep -l "gnome|kde|mate|cinnamon|lxde|xfce|jwm"
02. /etc下面有没有gnome文件夹或者kde文件夹,如果都有,就是都安装了或者安装过。
pgrep 和 pkill命令
pgrep 相当于 ps -aux | grep 进程名 | grep -v grep| awk '{print $2}'
pidof 是Linux系统中用来查找正在运行进程的进程号(pid)的工具,功能类似pgrep和ps
kill 默认传递终止进程运行的信号给进程 最常被使用的信号是1/9/15
killall (kill processes by name)用于杀死进程,与 kill 不同的是killall 会杀死指定名字的所有进程
pkill 还有一个更重要的功能,即按照终端号来踢出用户登录 pkill -u mark,danny //结束mark,danny用户的所有进程
###脚本示例
pgrep mysql | xargs kill -s 9
ps -ef | grep mysql | grep -v grep | awk '{print $2}' | xargs kill -9
kill -s 9 `pgrep mysql`
脚本说明:
grep -v grep;这句命令是什么意思。其实是为了从查询结果中去掉包含grep的记录, -v 后面的grep可以改为你想过滤的值
awk
两个单引号加大括号 默认字段分割符是空格或者 Tab键
print 将字段列出来
每一行的字段都有变量名 $1 $2
自定义分隔符 BEGIN {FS=":"}
kill -9 pid 等于 kill -s 9 pid
cut 按字符截取:选项-c
截取file中所有行从第一个字符到第index个字符之间的所有字符(index最小值为1,截取包含头尾字符)
###参考:https://cloud.tencent.com/developer/article/1840343
ps -a | grep mysql | grep -v grep | cut -c 1-2 | xargs kill -9
ps -aux | grep mysql | grep -v grep | awk '{print $2}' | xargs kill -9
USER 表示进程的用户,PID 是进程的 ID,%CPU 和 %MEM 分别表示 CPU 和内存的占用百分比,COMMAND 是启动进程的命令行。
STIME :系统启动时间 TTY:登入者的终端机位置 TIME:使用掉的CPU时间
-a: 显示所有用户的进程,而不仅仅是当前用户的
-u: 显示详细的用户/拥有者(user)信息
-x: 显示没有控制终端的进程。
-e:显示所有进程 等同于-A
ps -ef 是System V展示风格 ps aux是BSD风格
1.command列如果过长,aux会截断显示,而-ef不会截断;
2.如果想查看进程的CPU占用率和内存占用率,使用aux;
3.如果想查看进程的父进程ID和完整的command,使用-ef
3.GNOME图形化环境支持两种流行的可生成标准窗口的包:
gdialog
zenity
到目前为止,zenity 是大多数GNOME桌面Linux发行版上最常见的包
zenity 在shell脚本中显示对话框
Zenity是一个Linux下的命令行工具,它可以生成Gtk+图形用户界面(GUI)对话框,支持多种窗口类型和选项
zenity示例
#!/bin/bash
weather=$(zenity --list \
--title="step 1:Choose the weather " \
--column="Hello" \
sunny \
cloudy \
rainny \
snowy \
Foggy
)
NUMBER=2
RESULT_PATH=~/$school_$(date "+%Y%m%d")_$(weather)/
# 如果目录不存在,则创建它
if [ ! -d "$RESULT_PATH" ]; then
mkdir -p "$RESULT_PATH"
fi
#循环执行
for ((i=0;i< $NUMBER;i++))
do
WEA_PATH=~/school_${weather}_$(date "+%Y%m%d%H%M%S").txt
echo " $i *_* $WEA_PATH "
echo " $i ^_^ $RESULT_PATH ^_^ ........"
done
echo "---success---"
参考
https://help.gnome.org/users/zenity/stable/index.html.zh_CN
https://blog.csdn.net/DarlingTeng/article/details/106266964 Zenity - 在Shell下迈向图形化的GUI工具
标签:Shell,grep,kill,pgrep,zenity,进程,图形化
From: https://www.cnblogs.com/ytwang/p/18282366