博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux脚本开发流程,编写Linux Shell程序
阅读量:6268 次
发布时间:2019-06-22

本文共 1280 字,大约阅读时间需要 4 分钟。

再举一个例子

例如我想查看现在进程中有没有播放器开启的,假设播放器都叫XXplayer,或者说名字里都带有player这个关键词。

www.linuxidc.com@www.linuxidc.com:~$ ps -e | grep player

28071 ?        00:02:05 smplayer

28074 ?        00:06:05 mplayer

我们使用ps -e来显示当前所有的进程名(ps -f, 能显示进程的调用路径),管道线之后是用grep命令来进行名称过滤,只提取出名字里含有player的。前面会显示它的pid进程号,如果我们想关闭某个命令,可以在终端输入kill+进程号,例如:

kill 28071

即可关闭刚才的smplayer进程。

管道命令中,有一类又叫做过滤器,好比从前一个命令中得到输入,使用这个命令之后再输出结果,类似过滤的效果。这样的命令常用的有:grep,tail,sort和wc等。

一个管道线也会有多个命令

ls | grep m?.cpp | wc -l #这条管道命令来显示当前目录下所有2个字母,而且第一个字母是m,后缀是cpp的文件的数目,特别注意,这里?只能代表一个字符,如果是多个字符,要是用*来通配

ls | grep m*.cpp | wc -l

后台命令

有时候,我们不希望在前台看到命令的执行过程,可以在一条命令的末尾加上&符号,可以实现命令后台运行。

//=====================前台模式=====================

www.linuxidc.com@www.linuxidc.com:~$ while true; do date; sleep 1; done

Fri Feb 18 16:27:49 CST 2011

Fri Feb 18 16:27:50 CST 2011

Fri Feb 18 16:27:51 CST 2011

^C

//======================下面是后台===================

www.linuxidc.com@www.linuxidc.com:~$ while true; do date; sleep 1; done&

[1] 31813

www.linuxidc.com@www.linuxidc.com:~$ Fri Feb 18 16:28:42 CST 2011

Fri Feb 18 16:28:43 CST 2011

Fri Feb 18 16:28:44 CST 2011

前台模式中,虽然程序在运行,但是这时候我们并不是执行其他命令,只能用强制结束它之后才能继续使用。

后台模式中,程序在后台运行,因此系统在执行创建进程的时候,在终端上显示这个这个进程的PID,方便我们控制。因此类似这样的一个没有自带终止条件的程序是很危险的,因为他会在后台运行,但是我们却又不能直接控制它,此时,仍然可以在终端里输入其他命令,只不过会被这个后台的输出打断。因此我们使用kill+进程号来终止这个进程。0b1331709591d260c1c78e86d0c51c18.png

转载地址:http://haspa.baihongyu.com/

你可能感兴趣的文章
通过浏览器查看nginx服务器状态配置方法
查看>>
shell简介
查看>>
android 使用WebView 支持播放优酷视频,土豆视频
查看>>
怎么用secureCRT连接Linux
查看>>
C# 使用WinRar命令压缩和解压缩
查看>>
linux学习笔记一----------文件相关操作
查看>>
Mono for Android 优势与劣势
查看>>
服务器端开发技术
查看>>
Python3中urllib详细使用方法(header,代理,超时,认证,异常处理)
查看>>
ajax提交多个对象,使用序列化表单和FormData
查看>>
深入分析由前序和中序重构二叉树问题
查看>>
leetcode 题解 || Valid Parentheses 问题
查看>>
将图片转成base64字符串并在JSP页面显示的Java代码
查看>>
什么是WeakHashMap--转
查看>>
js 面试题
查看>>
第二十二节,三元运算
查看>>
Yacc 与 Lex 快速入门
查看>>
Unity中HDR外发光的使用
查看>>
Flume负载均衡配置
查看>>
Ajax详解
查看>>