使用fuser命令kill一个终端(特殊文件)的方法
2014-11-04 15:26
197 查看
/********************************************************************* * Author : Samson * Date : 11/04/2014 * Test platform: * 3.13.0-24-generic * GNU bash, 4.3.11(1)-release * *******************************************************************/
fuser: 显示使用特殊文件或文件系统的进程号并可选择是否进行kill,因为在GNU Linux中任何的文件或设备都看作是一个文件,所以这里说的特殊文件包括但不仅限于一个目录、一个打开的终端、一个打开的文件、一个共享库、一个进行了nmap的文件、一个正在读写的文件。
下面就使用fuser进行kill一个终端的例子。
在X-windows level下,在使用了ctrl+alt+F1后,进入了命令行模式的终端,在里面打开了emacs后,进行了ctrl+alt+F8切换回X-windows的操作,在这个时候使用w命令查看当前登录了的终端,如下:
ufo@ufo:~$ w
11:41:53 up 10 days, 22:46, 9 users, load average: 0.41, 0.40, 0.44
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
ufo tty1 11:35 6:17 1.48s 1.11s emacs
ufo tty8 :0 2410月14 10days 6:42m 1.44s gnome-session --session cinnamon
ufo pts/0 :0 四15 37:37 0.81s 0.81s bash
ufo pts/1 :0 四16 4days 0.40s 0.40s bash
ufo pts/5 :0 四16 18:05m 24.21s 5.43s bash
ufo pts/6 :0 四16 4days 1.57s 1.57s bash
ufo pts/7 :0 一17 1.00s 1.23s 6:46 gnome-terminal
ufo pts/8 :0 四16 4days 1.21s 1.21s bash
ufo pts/9 :0 10:18 1:23m 0.12s 6:46 gnome-terminal
可以看出tty1即是刚才打开emacs的那个终端,在这个时候想直接把它给关闭掉,那么肿么办喃?
这个时候就可以使用强大的fuser命令了,使用此命令可以进行查看要关掉的终端当前的用户名及进程号:
tty1对应的设备名为/dev/tty1
ufo@ufo:~$ fuser -u /dev/tty1
/dev/tty1: 8137(ufo) 8252(ufo)
这时可以看到当前使用tty1的用户为ufo,
那么如何终止掉这个进程呢?
使用如下命令即可:
ufo@ufo:~$ fuser -u /dev/tty1 -k
/dev/tty1: 8137(ufo) 8252(ufo)
再次使用w命令进行终端的查看:
ufo@ufo:~$ w
11:42:30 up 10 days, 22:47, 9 users, load average: 0.23, 0.36, 0.43
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
ufo tty8 :0 2410月14 10days 6:42m 1.44s gnome-session --session cinnamon
ufo pts/0 :0 四15 38:14 0.81s 0.81s bash
ufo pts/1 :0 四16 4days 0.40s 0.40s bash
ufo pts/5 :0 四16 18:05m 24.21s 5.43s bash
ufo pts/6 :0 四16 4days 1.57s 1.57s bash
ufo pts/7 :0 一17 6.00s 1.33s 6:47 gnome-terminal
ufo pts/8 :0 四16 4days 1.21s 1.21s bash
ufo pts/9 :0 10:18 1:23m 0.12s 6:47 gnome-terminal
以上可看出已经将tty1进程终止了;
至于其它的好玩的就只有自己去man一下子;
相关文章推荐
- 使用fuser命令kill一个终端(特殊文件)的方法
- 使用终端shell命令批量改动一个文件下的全部文件的读写权限
- linux下终端常用命令和vi命令修改文件及保存的使用方法
- 使用终端shell命令批量修改一个文件下的所有文件的读写权限
- 使用fuser命令结束一个文件的进程
- linux下终端常用命令和vi命令修改文件及保存的使用方法
- GIT 版本控制软件的常用命令记录每次更新到仓库 现在我们手上已经有了一个真实项目的 Git 仓库,并从这个仓库中取出了所有文件的工作拷贝。接下来,对这些文件作些修改,在完成了一个阶段的目标和使用方法
- Mac系统下下删除加锁文件方法|使用终端命令强制清除废纸篓中的文件
- 使用set命令 重写一个文件,并去掉最后一个|的方法
- Linux创建文件命令的方法与特殊目录简介
- Linux下不用终端命令打开.jar文件的方法
- 用电脑控制手机,就像运行超级终端的方法,使用的是LINUX命令 可进行手机调试等
- 使用VS2008创建一个DLL文件的方法
- linux下vi命令 修改文件及保存的使用方法
- 使用VS2008创建一个DLL文件的方法
- web.config文件自定义配置节的使用方法的一个简单例子
- ubuntu 文件权限命令详解使用格式和方法
- 在AIX上用IBM的JVM,内存溢出时默认地会产生javacore文件(关于cpu的)和heapdump文件(关于内存的)。手动产生堆栈文件的方法是使用kill -3
- 【转】static和extern的区别;当使用另外一个文件中的变量、类、方法时,什么时候改用extern声明,什么时候该include?
- Linux系统中,有两个文件file1和file2,每个文件的每一行都是#UUID,其中的每一UUID表示一个号。要找出在file1中有而在file2中没有的UUID,使用cat,sort,uniq三个命令如何实现