Solaris 10下文件查找指南(图)(4)

  8 find命令其他应用

  假设您想要删除 home 目录中的大部分 .txt 文件,但希望能够逐个文件地执行该操作。像 UNIX 中的 rm 命令那样的删除操作是很危险的,因为当使用像 find 这样的自动化处理方式来查找文件时,它可能一不小心会删除重要的文件,您也许希望在删除这些系统查找到的文件之前对其进行仔细检查。下面的命令列出了您的 home 目录中所有的 .txt 文件。要删除这些文件,必须在 find 命令通过列出文件名提示您确认操作时输入 Y 或者 y: $ find $HOME/. -name *.txt -ok rm {} \; 它列出了查找到的每个文件,并且系统将暂停以等待您输入 Y 或者 y。如果您按下 Enter 键,系统将不会删除该文件。

  您可以使用 find 命令来清除目录或子目录中在正常使用过程中生成的临时文件,这样可以节省磁盘空间。要实现该操作,请使用下面的命令: $ find . \( -name a.out -o -name '*.o' -o -name 'core' \) -exec rm {} \; 括号中的文件掩码 标识出了需要删除的文件类型,每个文件掩码的前面都有 -name。该列表可以扩展为包括您需要清除的系统中的任何临时文件类型。在代码的编译和连接过程中,程序员及其工具会生成示例中的那些文件类型:a.out、*.o 和 core。其他的用户通常也会生成类似的临时文件,可以使用如 *.tmp、*.junk 等文件掩码来对命令进行相应的编辑。find 命令允许您复制目录中的全部内容,同时保持每个文件和子目录的权限、时间和所有权。要完成该操作,需要组合使用 find 和 cpio命令。

  9在文件中查找正文

  grep 命令用来在文本文件中查找指定模式的词或短语,并在标准输出上显示包括给定字符串的所 有行。grep 命令语法为:

  grep [选项] 查找模式 文件名 [文件名…]

  默认情况下,grep 在查找模式时区分大、小写;如果不想加以区别,用选项 -i。 例如,以下命令将在 /etc/ssh/ 目录及其子目录下的所有文件中查找字符串“ForwardAgent”出现的次数,结果如图5 。

  # grep ‘ForwardAgent’ /etc/ssh/*

  

Solaris 10下文件查找指南(图)

  图5在文件中查找正文

  查找模式可能是唯一的参数,如果在模式中使用了 shell 元字符,通常要使用单引号(’)将其括起来。

  10 使用GUI方法

  Solaris 10的桌面JDS和CDE也包含GUI图像界面的查找文件的方法,使用方法非常简单,这里笔者就不赘述了。图7 和图6是查找的界面。

  

Solaris 10下文件查找指南(图)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/13b288207298fed665c5265691c4b069.html