首页 > 系统相关 >Ubuntu-Shell图形化工具-zenity

Ubuntu-Shell图形化工具-zenity

时间:2024-07-03 18:30:27浏览次数:14  
标签:Shell grep kill pgrep zenity 进程 图形化

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

相关文章