易截截图软件、单文件、免安装、纯绿色、仅160KB

详解Unix/Linux Shell的输入输出

      Shell的I/O语法难以理解,更难以正确使用。Shell的输入输出语法有两个难点:重定向和文件描述符。我以前对Shell I/O的理解也有错误。最近重新整理思路,决定写一篇文章来总结I/O重定向。
      先介绍几个基本概念:
1)文件(File):在Unix/Linux中,文件类型有七种,这七种类型是:目录、符号链接(指向另一个文件)、套接字文件、块设备文件、字符设备文件、命名管道文件、普通文件。这意味着,I/O设备被Unix/Linux视为“特殊”的文件,所以对设备进行输入输出等同于读写文件。
2)文件描述符(File Descriptor
):实际上,Shell中的文件描述符等同于C语言中的文件结构(参见《The C Programming Languag》的7.5节),它是一个包含文件信息的结构,这些信息包括:缓冲区的位置,缓冲区中当前字符的位置,文件是否到达末尾等。一个Shell脚本有10个文件描述符。其中,0、1、2是标准输入、标准输出和标准错误,我们可以任意使用的文件描述符是3到9。
3)重定向(Redirect):在Shell中,我们可以对命令(命令就是程序或脚本)的标准输入、标准输出和标准错误进行重定向,使其指向其他文件。
    下面开始讨论Shell输入/输出的的两种情况:
1)输入输出
2)
3)
  在此声明,可以随意转载或引用,但请注明出处,谢谢。


相关文档:

配置自己的Linux svnserve服务器

一、新建并初始化版本库
1.新建代码仓库
# svnadmin create /home/myrepos
这样,我们就在/home目录下新建了版本库myrepos。
2.初始化代码仓库
#mkdir -p code/{branches,tags,trunk}
按照svn手册上的建议,我们版本库的布局采用branches/tags/trunk这样的三个目录。
然后可以将代码直接拷贝的trunk目录,也可以随后 ......

linux进程调度浅析


操作系统要实现多进程,进程调度必不可少。
有人说,进程调度是操作系统中最为重要的一个部分。我觉得这种说法说得太绝对了一点,就像很多人动辄就说"某某函数比某某函数效率高XX倍"一样,脱离了
实际环境,这些结论是比较片面的。
而进程调度究竟有多重要呢? 首先,我们需要明确一点:进程调度是对TASK_R ......

linux 模块中函数的调用(通俗易懂哦)

首先,应用程序是无法直接访问模块中的函数的(即使是你自编自挂的模块--实际上它也是内核模块),用户空间与内核空间之间只有通过一些特定的系统函数来进行通讯(如什么user_to_kernel),而绝对不可能通过“直接调用模块里的函数”这种形式来通讯。
那么,所编写的模块里的函数怎么才能被执行?由谁调用?其 ......

linux的触摸屏之五:帧缓冲设备上较准界面的配置

(1)帧缓冲设备跟TTY的关系。需要关注tty跟帧缓冲设备的关系,一般情况下帧缓冲设备是可以独立操作的,但是如果为了保证单独占用不被抢占,似乎还要关联一个tty终端。这里用的是虚终端VT。
      虚终端,也叫虚屏,它的英文名字为virtual terminal,缩写为VT或vt。在Unix系统用户中,虚终端有着 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号