您的位置:首页 > 运维架构 > Linux

专业地攻击:优秀黑客的Linux基础,part 4(查找文件)

2014-01-24 13:28 597 查看
我之所以写这一些列的文章是应为很多人在使用Linux的时候都有不解的地方。作为一个黑客,Linux技能是无可替代的攻击利器。

因为Linux有着和Mac OS以及Windows不一样的文件目录结构,所以很多新手在刚开始使用Linux的时候都会有一个疑问--怎样查找文件。在我们开始之前先要确保你已经掌握了我之前几篇的内容(1,2和3)。

第一步:在目录里查找文件(find)

第一个向你展示的是find命令。从字面意思你应该能猜到它的用途,没错,就是在目录里查找你想要的文件。默认情况下它是递归执行的,这意味着它会搜索每一个子目录去查找目标文件。例如,如果我想查找aircrack-ng文件,可以这样输入:

<pre>bt>find -name aircrack-ng</pre>



注意这里我们使用了-name参数来告诉Linux我们想要查找的文件名。

运行过后系统会返回所有包含这个文件的目录路径,我们可以更加精确地告诉Linux想在/pentest目录里搜索aircrack-ng文件:

<pre>bt>find /pentest -name aircrack-ng</pre>



这句命令的含义是:在pentest目录下包括所有的子目录搜索名字叫做‘aircrack-ng’的文件。

第二步:在路径变量里查找二进制文件(which)

加下来介绍的搜索命令是which,这个命令允许我们在自己的路径变量里面查找二进制文件。

二进制文件就相当于Windows下的可执行文件,就像echo,ls,cd,mv这些命令一样。路径变量就是一个控制当前用户可以使用哪些命令的变量,通常二进制文件都是在/bin目录(binaries的缩写)或者/sbin目录下,它们都会出现在路径变量里。如果想知道我们能够执行那些目录里的二进制文件,可以查看路径变量:

<pre>bt>echo $PATH</pre>



Linux会返回路径变量的值,这些路径都是which命令会搜索的地方,所以当这样输入:

<pre>bt>which ls</pre>



它会返回ls二进制文件的所在路径,假如我们使用which去搜索aircrack-ng:

<pre>which aircrack-ng</pre>



它会返回所在路径/usr/local/bin/aircrack-ng。如果aircrack-ng所在的目录不在路径变量里那么which命令就帮不了你。

第三步:在任何目录查找任何文件(whereis)

和which命令不同的是,whereis命令不单单能查找路径变量里的二进制文件它可以在所有目录下查找文件。另外,whereis命令还可以找出帮助文档,因此,当我们这样输入:

<pre>bt>whereis aircrack-ng</pre>



可以看到whereis为我们找出了多个关于aircrack-ng的文件,包括它的帮助文档。

第四步:使用数据库查找文件(locate)

locate命令也是用来查找文件的,而且一般情况下它的速度要比which和whereis快。不同之处在于locate名令使用了一个包括文件系统里所有文件的数据库来搜索,因此速度比较快。

但是locate命令也有一个缺点。那就是新创建的文件不能被搜索到,因为locate使用的数据库一天才更新一次,一般在午夜时候系统的压力较低才会更新这个数据库。

<pre>locate aircrack-ng</pre>



可以从上面的截图看到locate命令会返回所有包含aircrack-ng关键字的文件,不论是不是二进制文件。

希望这篇教程所讲解的知识可以帮助你在Linux中找到想要的文件。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: