locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案。其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了。在一般的 distribution 之中,数据库的建立都被放在 crontab 中自动执行。
命令格式1$ locate [选择参数] [样式]
命令功能 locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,但较差劲的是locate所找到的档案若是最近才建立或 刚更名的,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。(etc/crontab)
locate指定用在搜寻符合条件的档案,它会去储存档案与目录名称的数据库内,寻找合乎范本样式条件的档案或目录录,可以使用特殊字元(如* 或 ?等)来指定范本样式,如指定范本为kcpa*ner, locate会找出所有起始字串为kcpa且结尾为n ...
whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。
但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。
命令格式1$ whereis [-bmsu] [BMS 目录名 -f ] 文件名
命令功能 whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。
命令参数
参数
描述
-b
定位可执行文件 ...
我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:which 查看可执行文件的位置。whereis 查看文件的位置。locate 配合数据库查看文件位置。find 实际搜寻硬盘查询文件名称。 which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
命令格式1$ which 可执行文件名称
命令功能 which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
命令参数
参数
描述
-n
指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名
-p
与-n参数相同,但此处的包括了文件的路径
-w
指定输出时栏位的宽度
-V
显示版本信息
使用实例例一:查找文件、显示命令路径
123## which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的!## 所以,不同的 PATH 配置内容所找到的命令当然不一样的!$ w ...
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.
命令格式1tail[必要参数][选择参数][文件]
命令功能 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
命令参数
参数
描述
-f
循环读取
-q
不显示处理信息
-v
显示详细的处理信息
-c<数目>
显示的字节数
-n<行数>
显示行数
–pid=PID
与-f合用,表示在进程ID,PID死掉之后结束
-q, –quiet, –silent
从不输出给出文件名的首部
-s, –sleep-interval=S
与-f合用,表示在每次反复的间隔休眠S秒
使用实例例一:显示文件末尾内容
12## 显示文件最后5行内容$ tail -n 5 log2014.log
例二:循环查看文件内容
1$ tail -f test.log
例三: ...
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然尔就是看档案的结尾。
命令格式1head [参数]... [文件]...
命令功能 head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
命令参数
参数
描述
-q
隐藏文件名
-v
显示文件名
-c<字节>
显示字节数
-n<行数>
显示的行数
使用实例例一:显示文件的前n行
1$ head -n 5 log2014.log
例二:显示文件前n个字节
1$ head -c 20 log2014.log
例三:文件的除了最后n个字节以外的内容
1$ head -c -32 log2014.log
例四:输出文件除了最后n行的全部内容
1$ head -n -6 log2014.log
less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。
命令格式1$ less [参数] 文件
命令功能 less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
命令参数
参数
描述
-b
<缓冲区大小> 设置缓冲区的大小
-e
当文件显示结束后,自动离开
-f
强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-g
只标志最后搜索的关键词
-i
忽略搜索时的大小写
-m
显示类似more命令的百分比
-N
显示每行的行号
-o <文件名& ...
more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。
命令格式1$ more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
命令功能 more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。
命令参数
参数
描述
+n
从笫n行开始显示
-n
定义屏幕大小为n行
+/pattern
每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示
-c
从顶部清屏,然后显示
-d
提示“Press space to continue,’q’ to quit(按空格键继续,按q键退出)”,禁用响铃功能
-l
忽略Ctrl+l(换页)字符
- ...
nl命令在linux系统中用来计算文件中行号。nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 0 等等的功能。
命令格式1$ nl [选项]... [文件]...
命令功能 nl 命令读取 File 参数(缺省情况下标准输入),计算输入中的行号,将计算过的行号写入标准输出。 在输出中,nl 命令根据您在命令行中指定的标志来计算左边的行。 输入文本必须写在逻辑页中。每个逻辑页有头、主体和页脚节(可以有空节)。 除非使用 -p 标志,nl 命令在每个逻辑页开始的地方重新设置行号。 可以单独为头、主体和页脚节设置行计算标志(例如,头和页脚行可以被计算然而文本行不能)。
命令参数
种类
参数
描述
-b
-b a
表示不论是否为空行,也同样列出行号(类似 cat -n)
-b t
如果有空行,空的那一行不要列出行号(默认值)
-n
-n ln
行号在萤幕的最左方显示
-n rn
行号在自己栏位的最右方显示,且不加 0
-n rz
行号在自己栏位的最右方显示 ...
cat命令的用途是连接文件或标准输入并打印。这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。
命令格式1$ cat [选项] [文件]...
命令功能cat主要有三大功能
一次显示整个文件:cat filename
从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.
将几个文件合并为一个文件:cat file1 file2 > file
命令参数
参数
描述
-A, –show-all
等价于 -vET
-b, –number-nonblank
对非空输出行编号
-e
等价于 -vE
-E, –show-ends
在每行结束处显示 $
-n, –number
对输出的所有行编号,由1开始对所有输出的行数编号
-s, –squeeze-blank
有连续两行以上的空白行,就代换为一行的空白行
-t
与 -vT 等价
-T, –show-tabs
将跳格字符显示为 ^I
-u
(被忽略)
-v, –show-nonprinti ...
linux的touch命令不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件。
命令格式1$ touch [选项]... 文件...
命令功能 touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。
命令参数
参数
描述
-a
或–time=atime或–time=access或–time=use 只更改存取时间
-c
或–no-create 不建立任何文档
-d
使用指定的日期时间,而非现在的时间
-f
此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题
-m
或–time=mtime或–time=modify 只更改变动时间
-r
把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同
-t
使用指定的日期时间,而非现在的时间
命令实例例一:创建不存在的文件
1$ touch 1.txt
例二:更新1.txt的时间和2.txt时间戳相同
1$ touch -r 1.txt 2.txt
例三:设定文件的时 ...