当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: 在开始使用 UNIX 的各种文本实用程序操作文本之前,需要了解如何获得文本。
 

 

 ·solaris内核proc目录简介    »显示摘要«
    摘要: /proc/目录简介 进程文件系统,procfs,是一个伪文件系统,它允许对一些非传统意义上的文件通过标准文件i/o接口进行访问。procfs将solaris内核进程架构进行了抽象,比如当前系统中所有运行着的进程会在/proc/目录下有所体现。系统中每个进程对应/proc/目录下的一个子目录,子目录名即相应进程号(pid),所有进程号子目录构成了/proc/目录的全部内容。 许多提供进程数据和控制点的内核数据结构在/proc//子目录下有相应反映,比如,......
 ·unix系统被删文件的恢复策略    »显示摘要«
    摘要:与dos/windows不同,unix文件被删除后很难恢复,这是由unix独特的文件系统结构决定的。unix文件目录不像dos/windows那样,文件即使被删除之后仍保存有完整的文件名、文件长度、始簇号(即文件占有的第一个磁盘块号)等重要信息;相反,它的文件信息全部依靠一种被称为i节点的数据结构来描述,而i节点在相应文件被删除之后即被清空,因此,要想直接恢复被删除的文件内容几乎是不可能的,必须另辟蹊径。本文结合实际,讨论几种文件恢复策略及其关键步骤的具体......


使用UNIX进行文本处理

在unix诞生之初,人们不大熟悉这种新的操作系统,但他们很快找到了适当的切入点,大学中的研究人员需要一种像样的文本处理环境。因为在那个时候,计算机的处理速度与内存容量有限,所以程序必须很小,并且相对比较简单。这样就产生了 unix 中著名的设计思想:“一组工具协同工作,以便完成一项任务”。通过 unix 管道将几种很小的、但功能强大的文本处理工具组合在一起,可以对文本进行各种方式的转换与操作。

【相关文章:身患安全杂症,企业如何“下药”?(1)

【扩展阅读:Cisco网站悄然换标 新旧Logo完成

对文本进行各种操作 【扩展信息:RAID技术新手入门教程

在开始使用 unix 的各种文本实用程序操作文本之前,需要了解如何获得文本。并且在进行这项工作之前,需要了解 unix 的标准输入/输出 (i/o) 流。标准 c 库(因而,每个 unix 程序)定义了三种标准流:输入、输出与错误。有时将它们称为 stdin、stdout 与 stderr,这是在所有 c 程序中用来表示它们的全局变量。

当您在 shell 中使用 > 操作符将程序输出重定向到文件时,就可以将它的标准输出 (stdout) 流发送到这个文件。例如:ls > this-dir 将 ls 的输出发送到一个名为 this-dir 的文件。

当您在 shell 中使用 < 操作符将程序输入重定向到文件时,就可以将该文件中的内容输入到该程序的标准输入 (stdin) 流。例如:sort < this-dir 可以从名为 this-dir 的文件中读取内容,并将其作为 sort 命令的输入。

另一个常用于重定向标准流的操作符是“|”(管道)操作符,它可以将左侧程序的标准输出流连接到右侧程序的标准输入流。例如:ls | sort 与前面的两个示例完成相同的任务,并且无需临时文件,ls 的输出直接进入 sort 命令。

如果您仔细观察,那么可能会发现,前面的这些示例中并没有出现标准错误 (stderr) 流。与标准输出流一样,可以对 stderr 进行重定向或使用管道进行传输,但是您需要告诉 shell 您希望处理 stderr 而不是 stdout。

可以使用 2> 操作符将标准错误流重定向到文件。在处理生成有用的错误输出的命令时,您经常会看到这个操作符,比如用于编译 unix 程序的 make 工具:make 2> build-errors。

这个命令运行了 make,并将任何错误信息发送到 build-errors 文件。与之类似,您可以使用 2| 将 stderr 通过管道传递到另一个程序。

如果您对具体的细节感兴趣,那么其他的流也有与之对应的数字,尽管很少使用到它们(0 表示标准输入,1 表示标准输出),除了在一个非常常见的操作符中。在清单 1 所示的示例中,2>&1 操作符将标准错误流连接 到标准输出流。与 > 操作符组合在一起,您可以使 stderr 与 stdout 输出到相同的文件中。

清单 1. 将标准错误流连接到标准输出流

make > build-output 2>&1

命令

有两个常用来生成文本输出的标准 unix 命令:cat 与 echo。

cat 命令读取参数中指定的每个文件,并将这些文件的内容写入到 stdout。echo 命令将其参数写入到 stdout。您常常会发现它们作为更复杂的命令管道中的一部分(请参见清单 2)。

清单 2. 使用 cat 与 echo

cat file1 file2 ... filen

echo arguments...


...   下一页
 ·unix系统被删文件的恢复策略    »显示摘要«
    摘要:与dos/windows不同,unix文件被删除后很难恢复,这是由unix独特的文件系统结构决定的。unix文件目录不像dos/windows那样,文件即使被删除之后仍保存有完整的文件名、文件长度、始簇号(即文件占有的第一个磁盘块号)等重要信息;相反,它的文件信息全部依靠一种被称为i节点的数据结构来描述,而i节点在相应文件被删除之后即被清空,因此,要想直接恢复被删除的文件内容几乎是不可能的,必须另辟蹊径。本文结合实际,讨论几种文件恢复策略及其关键步骤的具体......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE