Linux常见指令解析(二)
man指令
语法:man [选项] 命令
功能:Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助,访问Linux手册页的命令是man。
man手册分为八章:
1 是普通的命令
2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)
3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
6 是给游戏留的,由各个游戏自己定义
7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明
8 是系统管理用的命令,这些命令只能由root使用,如ifconfig
常用选项:
- -k 根据关键字搜索联机帮助
如:查找所有帮助页中包含关键字 “printf” 的条目(如函数、命令等)。
- num 只在第num章节找
如:直接查看man手册第三章节中的printf函数说明
- -a 将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,找到就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。
注意:
使用 man 命令 的方式查找,在这种不写编号的情况下,默认依次按第一章、第二章、第三章……的方式进行查找。找到了,就停止;找不到,就会显示命令不存在。
cp指令
语法:cp [选项] 源文件或目录 目标文件或目录
功能:复制文件或目录
说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息。
如:
常用选项:
- -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
- -i 或 --interactive 覆盖文件之前先询问用户
- -r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
- -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理
示例:
- 拷贝一个文件到同级目录下
注意:
当目标文件不存在时,cp指令会帮我们创建目标文件,再拷贝源文件中的文件内容到目标文件。 - 拷贝一个文件到不同目录下
注意: . .表示上级目录 - 拷贝一个目录到同级目录下
注意:不能直接拷贝目录,否则会报错,如:
拷贝目录需要加上-r选项
- 拷贝一个目录到不同目录下
mv指令
语法: mv [选项] 源文件或目录 目标文件或目录
功能:mv指令可以对目标文件/目录进行剪切并重命名
常用选项:
- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
使用示例:
-
对文件的剪切和重命名
1.对当前目录下的已有文件进行重命名
2.把一个目录下的文件以原来的文件名剪切到其他目录
3.对一个目录下的文件进行剪切并重命名
那么,如何区分mv指令是在单纯地剪切 or 单纯地重命名 or 剪切并重命名呢?
可以将mv指令的所有行为都理解为剪切并重命名。
在没有目标文件名时,默认使用原来的文件名进行剪切;有目标文件名,就使用指定文件名进行剪切。
如果指定了目录,就把文件移动到指定目录;如果在当前目录,就在当前目录剪切,并以新的文件名拷贝回当前目录。 -
mv对于目录进行的剪切并重命名操作在语法上和对文件进行的剪切并重命名操作是一样的
cat指令
语法:cat [选项][文件]
功能: 查看目标文件的内容
常用选项:
- -b 对非空输出行进行编号
- -n 对输出的所有行进行编号
- -s 不输出多行空行(只输出一行空行)
cat指令查看文件内容的缺陷:
1.cat直接将整个文件内容输出到终端,无论文件大小;
2.内容显示完毕后直接返回命令行,无法暂停、翻页或搜索。
因此cat适用于查看小文件,不适合查看大文件。
more指令
语法:more [选项][文件]
功能:查看文件内容
常用选项:
- -n 对输出的所有行编号
- q 退出more
more指令的优点:
按屏幕大小逐页显示文件内容,支持手动翻页。
more指令的缺点:
仅支持向下翻页,无法回退到上一页
more指令可用于查看大文件。
less指令
语法: less [参数] 文件
功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
常用选项:
- -i 忽略搜索时的大小写
- -N 显示每行的行号
- /字符串:向下搜索“字符串”的功能
- ?字符串:向上搜索“字符串”的功能
- 重复前一个搜索(与 / 或 ? 有关)
- 反向重复前一个搜索(与 / 或 ? 有关)
- q:quit 退出