【发布时间】:2012-07-10 20:51:54
【问题描述】:
我有一个简单的 egrep 命令,可以在当前目录中的所有文件中搜索包含“error”一词的行:
egrep -i "error" *
此命令也将通过子目录。以下是整个文件夹的示例:
/Logfile_20120630_030000_ID1.log
/Logfile_20120630_030001_ID2.log
/Logfile_20120630_030005_ID3.log
/subfolder/Logfile_20120630_031000_Errors_A3.log
/subfolder/Logfile_20120630_031001_Errors_A3.log
/subfolder/Logfile_20120630_031002_Errors_A3.log
/subfolder/Logfile_20120630_031003_Errors_A3.log
顶层目录的日志文件包含“错误”行。但是“子文件夹”目录中的日志文件不包含带有“错误”的行。 (仅在文件名中)
所以我遇到的问题是 egrep 命令似乎正在查看“子文件夹”中的信息。我的结果是一大块似乎是二进制块,然后是顶部文件夹日志文件中包含单词“error”的文本行。
如果我删除了“子文件夹”下的所有文件,但没有删除文件夹本身,我会得到完全相同的结果。
那么 Unix 是否将文件历史信息保存在文件夹中?
问题已通过运行得到纠正: 寻找 。 -类型 f | egrep -i "错误" *
但我仍然不明白为什么会出现问题。我在 SunOS 上运行 C-shell。
【问题讨论】: