科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道Solaris 10中文件查找全攻略(图)

Solaris 10中文件查找全攻略(图)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在Unix上查找某个文件确实是一件比较麻烦的事情。毕竟在Unix中需要我们使用专用的“查找”命令来寻找在硬盘上的文件。

作者:华江 来源:IT168 2008年3月20日

关键字: GUI unix Find 服务器 Solaris

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共3页)

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/*

   

  图5在文件中查找正文

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

  10 使用GUI方法

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

   

   图6 在JDS中查找文件

   

  图7 在CDE中查找文件

  总结:到这里为止我们已经学习了这名多关于find和grep命令的使用方法,如果我们能熟练掌握在Solaris中find命令的使用方法,那么在Solaris中查找文件也不是一件困难的事情。 另外本文的思路也可以在Linux和其他版本的unix中使用。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章