查找文件命令
查找文件使用find命令。该命令的功能是指在指定的目录开始,递归地搜索各个子目录,查询满足条件的文件并对应采取相关的操作。此命令提供了非常多的查询条件,功能非常强大。
find命令提供的寻找条件可以使用一个由逻辑运算符not、and、or组成的复合条件,逻辑运算符not、and、or的含义如下。
·and:逻辑与,在命令中用“-a”表示,是系统默认的选项,表示只有当所给的条件都满足时,寻找条件才满足。
·or:逻辑或,命令中用“-o”表示,该运算符表示只要当所给的条件有一个满足时,寻找条件就满足。
·not:逻辑非,命令中用“!”表示,该运算符表示查找不满足所给条件的文件
该命令的格式为:
find 【路径】 【参数】 【文件名】
参数含义如下:
·-name:文件名,表示查找指定名称文件。
·-lname:文件名,查找指定文件所有的链接文件
·-user:用户名,查找指定用户拥有的文件
·-group:组名,查找指定组拥有的文件
提示:通配符“*”表示一个字符串,“?”只代表一个字符。它们只能通配文件名和扩展名,不能全部都表示。
文件内容查询命令
该组命令以指定的查找模式搜索文件,通知用户在什么文件中搜索与指定的模式匹配的字符串,并且打印出所有包含该字符串的文本行。在该文本行的最前面是该行所在的文件名。
1.grep命令
grep命令的功能是以指定的查找模式搜索文件,通知用户在什么文件中搜索与指定的模式匹配的字符串,并且打印出所有包含该字符串的文本行。该文本行的最前面是该行所在的文件名。
该命令的格式为:
grep 【选项】 文件名1,文件名2,...,文件名n
常用选项有如下几个。
·-i:查找时忽略字母的大小写。
·-l:仅输出包含该目标字符串文件的文件名
·-v:输出不包含目标字符串的行
·-n:输出每个含有目标字符串的行及其行号
不带选项表示查找并输出所有包含目标字符串的行。
2.egrep命令
egrep命令的功能是检索扩展的正则表达式
该命令的格式为:
grep 【选项】 文件名1,文件名2,...,文件n
常用的选项有如下几个。
·-i:查找时忽略字母的大小写。
·-l:仅输出包含该目标字符串文件的文件名
·-v:输出不包含目标字符串的行
·-n:输出每个含有目标字符串的行及其行号
不带选项表示查找并输出所有包含目标字符串的行。
3.fgrep命令
fgrep命令检索固定字符串,并不识别正则表达式,是一种更为快速的搜索命令
该命令的格式为:
grep【选项】 文件名1,文件名2,...,文件名n
常用的选项有如下几个。
·-i:查找时忽略字母的大小写。
·-l:仅输出包含该目标字符串文件的文件名。
·-v:输出不包含目标字符串的行。
·-n:输出每个含有目标字符串的行及其行号。
不带选项表示查找并输出所有包含目标字符串的行。
例如:fgrep hello test //在test中搜索固定的字符串hello
注意:它不支持正则表达式,如果查找“hello*”,则不会有输出结果
文件处理命令
sort命令的功能是逐行对文件中的内容进行排序,如果两行的首字符相同,该命令将继续比较这两行的下一个字符。snort命令是根据输入行抽取一个或多个关键字进行比较来完成的,默认情况下,以整行为关键字按ASCII码字符顺序进行排序。ASCII码字符集的前面是一些特殊字符,接着是一些标点符号,然后是数字、一些专用字符、大写字母表,最后是5个编程符号。
该命令的格式为:
sort 【选项】 文件名
常用选项有如下几个。
·-d:可以使sort忽略标点符号和一些其他特殊字符,而对字母、数字和空格进行排序,即按字典顺序排序。
·-f:不区分大小写进行排序。
·-n:按数值排序,不按ASCII码排序。
·-r:反向排序
·+n1-n2:第n1分隔符之后第n2个分隔符之前的字段,默认的分隔符为空格,分隔符从1开始算起。
·-k n:按第n字段排序。
·-tx:以任意字符x作为定界符
·-o arg:输出置于文件arg中。
文件统计命令
wc命令的功能是统计文件中的行数、单词数及字符数
该命令的格式为:
wc 【选项】 文件名
常用的选项有如下几个。
·-c:统计字符数
·-w:统计单词数
·-l:统计行数
例如:wc -lcw /etc/passwd //统计/etc/passwd文件中的行数、单词数和字符数
这些选项可以任意组合,但输出结果始终按行数、字数、字节数、文件名顺序显示并且每项最多一列
文件帮助命令
参考手册是一个功能完善的系统不可或缺的一部分。它包括了大量立即可用的详尽文档资料,如所有标准使用程序的用法和功能,大量的应用程序和库文件的用法,以及系统文件和系统程序库的资料。同时,还包括了和每个条目相关的特殊命令和文件的补充信息。另外,它通常还提供范例和错误情况说明
获取帮助最重要的命令是man。man命令的功能为显示命令及相关配置文件的用户帮助手册,其内容包括命令语法、各选项的意义。
该命令的格式为:
man 命令名称
每个手册标题的左右侧是命令名和手册页所属的章节号。标题的中间是章节的名称。最后一行通常是上次更改日期。手册页分为10部分
部分 内容
NAME 命令的名称和简短描述
SYNOPSIS 语法的描述
DESCRIPTION 命令的详细描述
OPTIONS 提供的所有可用选项的描述
COMMANDS 在程序运行时可以分配给该程序的说明
FILES 使用某种方法连接到命令的文件
SEE ALSO 相关命令的提示
DIAGNOSTICS 程序可能出现的错误消息
EXAMPLES 调用命令的示例
BUGS 命令的已知错误和问题
手册页包含8节
节 内容
1 可执行程序和shell命令(用户命令)
2 系统调用
3 功能和库例程(语言函数库调用)
4 设备文件和网络界面
5 配置文件和文件格式
6 游戏
7 宏软件包和文件格式
8 系统管理命令
常用的man命令的用法如下
(1)显示有关crontab命令的一般信息,格式如下:
man 1 crontab
(2)显示有关crontab命令的配置文件,格式如下:
man 5 crontab
当某个命令有多个手册页时,使用这种方法查找该命令所属的章节特别有效
(3)显示有关用户命令的信息,格式如下:
man 1 uname
(4)显示有关系统调用的信息,格式如下:
man 2 uname
(5)显示某个命令或实用程序的所有可用手册页的简短描述,格式如下:
whatis man
也可以通过在whatis命令的命令行上同时输入多个参数来得到多个命令的简短描述。这些参数之间用空格隔开:
whatis login set setenv
(6)“man -k keyword-list”是用来在所有的帮助手册中查找keyword-list中的关键词的概述,这个过程很慢,可以指定一小部分来缩小查找范围,如:
man -k printf
(7)打印手册页信息:
man man | colcrt >man.manpage
或者
man man | col-bx >man.manpage
实用程序colcrt和col-bx能去掉终端控制字符