1.shell先后使用fork和exec系统调用来执行一个外部命令。

2.在linux系统中,有三个文件会被内核自动打开,分别是stdin、stdout、stderr。

3.进程的属性相关命令:

查看进程的属性 ps [options]

实时监视CPU的活动状态并且交互地控制这些进程 top命令

显示物理内存和swap分区的使用情况 free命令(非实时) 想要持续地监视 free -s 10

4.kill命令:

kill命令是通过向指定进程发送信号,操作系统根据信号来实现对指定进程如何操作。

kill [-signal_number] proc-list

命令kill -l 返回所有信号的号码以及名字的列表

缺省信号,代表终止进程

5.进程和作业的控制:

需要在Linux上执行一些需要很长时间才能完成的工作,而这些工作执行时,又希望做一些其他的工作,这时就要将命令放到后台去执行,通过在命令后加&实现。

作业是一个不运行于前台的进程,并且只能在关联的终端上。

使用fg命令把后台的进程转移到前台执行, fg [%jobID]

使用bg命令吧前台被挂起的命令转到后台后台继续执行,bg[%jobID]

使用jobs命令显示所有挂起的和后台进程的作业号,jobs [option] [%jobID]

6.linux的守护进程:

任何在后台执行的程序都可以称为守护进程,如lpd、smtpd、httpd、inetd

7.linux定时作业调度:

crond守护进程定期检查是否有要执行的作业,如有需要执行的作业吗,便会自动执行。crond守护进程用于检查/var/spool/cron目录中是否存在一个和用户名同名的crontab文件,检查其中列出的执行时间,并在适当的时间提交执行命令。

crontab命令用来创建、编辑、删除crontab文件,每一个用户都可以有一个crontab文件来保存调度信息,使用它运行任意一个shell脚本或者命令,隔一段时间运行一次。

crontab [-u user] -e(-l,-r)

crontab crontabname

crontab文件中每一条目(行)表示一个特定的时间运行作业,格式是:

minute hour day month weekday command

at命令允许用户向crond守护进程提交作业,使其在稍后的时间运行。

at -f at.sh 12:30

8.命令行中使用操作符:

command1;command2  --命令的顺序执行

command1&command2&  --命令的并发执行(也就是每个命令都在后台执行)

commond1&&command2  --只有前面的命令执行成功,后一条命令才执行

command1||command2  --只要一条命令执行成功,后面的命令就不执行了

command1|command2   --将command1的标准输出连接到command2的标准输入

9.linux系统启动、关闭和进程层次结构:

查看进程的层次关系,用ps -ef 命令和pstree命令。

用shutdown或halt命令关闭linux系统。

10.输入输出重定向:

command < filename

command > filename  --重定向可能覆盖文件,用command >> filename可避免,将输出添加到该文件末尾。

通过使用文件描述符,在bash、POXIS shell 中标准输入和标准输出能够分别使用 0<, 1>, 2>操作符来重定向, grep "Joson" students 1> output.out 2> output.err

注意: 在shell命令行的解析中,重定向操作按照从左到右的顺序进行,

sort 0< students 1> students.sort 2> students.err

sort 2>students.err 0< students 1> students.sort  两者的区别

cat ch1 ch2 ch3 1>
ch.out.err 2>&1

cat ch1 ch2 ch3 2> ch.out.err 1>&2   表示标准输出和错误输出都到一个文件中。

linux进程、管道和重定向的更多相关文章

  1. linux 学习管道 和重定向

    开源文化的理念之一 就是不要重新发明轮子 在linux 系统中大多是都是非常简单的命令,每个命令都是实现一个或者几个简单的功能,我们可以将不同的命令组合在一起 来达到复杂的功能的目的,在linux中因 ...

  2. Linux教程 - 管道和重定向

      管道和重定向! 保持数据流动 介绍   在前两节中,我们看了一些可以为我们操作数据的过滤器.在本节中,我们将看到我们如何将它们结合在一起来执行更强大的数据操作. 本节涉及一些阅读.即使这些机制及其 ...

  3. linux --stdin 管道 标准输入重定向

    linux --stdin 标准输入重定向 --stdin This option is used to indicate that passwd should read the new passwo ...

  4. linux文件管理之管道与重定向

    ============================================================== 内容提要: 输入输出重定向.管道: 重定向的作用: 文件描述符 0 1 2 ...

  5. Linux管道及重定向

    Linux管道及重定向 对shell有一定了解的人都知道,管道和重定向是 Linux 中非常实用的 IPC 机制.在shell中,我们通常使用符合'|'来表示管道,符号'>'和'<'表示重 ...

  6. linux管道和重定向

    管道 管道应该是等左边的程序执行完,才使用左边的程序的输出执行右边的程序. 但是在测试的时候,如果左边的程序无限循环且不等待的输出,那么左边的程序执行时右边的程序也会执行,个人感觉这是linux的机制 ...

  7. Linux基本配置和管理 2 ---- Linux多命令协作----管道及重定向

    1 管道和重定向 1 在Linux中大多数命令都很简单,很少出现复杂的命令,每个命令只是实现一个简单的功能,我们可以通过组合不同的命令来实现复杂的功能 2 在Linux中几乎所有的命令返回的数据都是纯 ...

  8. Linux进程通信----匿名管道

    Linux进程通信中最为简单的方式是匿名管道 匿名管道的创建需要用到pipe函数,pipe函数参数为一个数组表示的文件描述字.这个数组有两个文件描 述字,第一个是用于读数据的文件描述符第二个是用于写数 ...

  9. Linux入门基础 #9:管道及重定向

    本文出自   http://blog.csdn.net/shuangde800 ------------------------------------------------------------ ...

  10. Linux下管道重定向使用以及Shell编程(操作系统)

    实验名称:Linux的基本操作 实验目的: 1.了解管道和重定向 2.熟悉基本的Linux脚本的编写 实验环境:Ubuntu 12.4(32位,简体中文) 实验内容: 1.将当前用户目录下的文件清单输 ...

随机推荐

  1. ASP.NET MVC 实现AJAX跨域请求的两种方法

    通常发送AJAX请求都是在本域内完成的,也就是向本域内的某个URL发送请求,完成部分页面的刷新.但有的时候需要向其它域发送AJAX请求,完成数据的加载,例如Google. 在ASP.NET MVC 框 ...

  2. [ An Ac a Day ^_^ ] UVALive 2635 Housing Complexes 二分图最大匹配

    快要比赛了 看看原来做过的题 感觉这道题当时做的还是挺费劲的 所以发一下 题意: 一个土豪要建别墅 因为有的地区地方不够大 所以要拆屋子 每个地方的字母就是对应开发商的地盘 没有字母的就是自由土地 一 ...

  3. 1077. [NOIP2010冲刺六] 数列游戏

    [题目描述] 小M很喜欢找点游戏自娱自乐.有一天,她在纸上写了一串数字:1,1,2,5,4.接着她擦掉了一个1,结果发现剩下1,2,4都在自己所在的位置上,即1在第1位,2在第2位,4在第4位.她希望 ...

  4. 37.看下图实现如下接口和类,并完成Adventure中的主方法。

    //接口Swim package jieKou; public interface ICanswim { void Swim(); } //接口Fly package jieKou; public i ...

  5. Brackets + Sass 学习心得

    大家知道Brackets是一个可以实时浏览html页面修改效果的工具,对于前段开发人员应该不会陌生,有了它,布局页面再也不是什么困难了, 目前为止已经更新到1.6了. 下载最新版可以到官方网: htt ...

  6. mysql教程

    mysql教程 2016年5月14日 0:09 1.查看mysql帮助信息 C:\Users\zhangcunli>mysql --help mysql  Ver 14.14 Distrib 5 ...

  7. Java操作*.properties

    java中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是"键=值"的格式,在properti ...

  8. 一个初学者的辛酸路程-初识Python-1

    前言 很喜欢的一句话,与诸位共勉. 人的一切痛苦,本质上都是对自己无能的愤怒----王小波. 初识Python 一.它的爸爸是谁 首先,我们需要认识下面这位人物. 他是Python的创始人,吉多范罗苏 ...

  9. Default Constructor的构造操作

    Default Constructor的构造操作 C++ Annotated Reference Manual书中的Section 12.1说过:default constructor 只有在编译器需 ...

  10. jquery操作HTML5 的data-*的用法实例分享

    .mm{width:256px; height:200px;} .mm[data-name='张含韵']{background:url(http://image.zhangxinxu.com/imag ...