一个linux下的C语言目录扫描程序,看不懂,求注释!越详细越好啊。会追加悬赏的!!

一个linux下的C语言目录扫描程序,看不懂,求注释!越详细越好啊。会追加悬赏的!!,第1张

其实递归这种东西你如果理解了,根本不需要注释,如果不理解再多的注释还是不懂,这个是linux程序设计中的一段经典代码,代码的核心其实就这几句

if(S_ISDIR(statbuf.st_mode))

{

if(strcmp(".",entry->d_name)==0||strcmp("..",entry->d_name)==0)

continue

printf("%*s%s/\n",depth,"",entry->d_name)

printdir(entry->d_name,depth+4)

}

首先确定是目录,要不然直接输出,然后如果的当前目录(.)或者父目录(..),则执行下一个循环其实就是跳过这两个目录,printf("%*s%s/\n",depth,"",entry->d_name)这句其实就是让显示的好看点,根据depth决定要打印出几个空格,书上有关于&*s的用法,接着就是再一次递归。。。。这个解释不来,只能意会不能言传。

用grep遍历目标目录下的所有文件

比如:你的字符是 “some_code” ,文件夹名字是 YOUR_DIR<pre t="code" l="bash">grep -R "some_code" YOUR_DIR

如果你不需要显示内容,只需要含有某个字符的文件:<pre t="code" l="bash">grep -lR "some_code" YOUR_DIR

附录:grep -R 和 -l 参数-R, -r, --recursive递归地读每一目录下的所有文件。这样做和 -d recurse 选项等价。

-l, --files-with-matches禁止通常的输出;作为替代,打印出每个在通常情况下会产生输出的输入文件的名字。对每个文件的扫描在遇到第一个匹配的时候就会停止。

ps:如果目录下有二进制文件,也可能匹配到。

linuxstrings命令不加参数时,它会扫描指定文件或目录,并将其中的所有可打印字符串输出到标准输出。它可以用来查找文件中的隐藏信息,如注释、版权声明等。它还可以用来查找可执行文件中的字符串,以查看其功能。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7318846.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存