一、查看完整的文件 1.cat (concatenate) 1)语法:cat [options] [file-list] 2)用途:在标准输出(默认情况下为显示器)上连接、显示文件列表file-list里的文件。 3)参数:-n 显示每一行的行号 -E 在每一行的末尾显示符号$ --help显示这个命令的用途,简要解释每一个选项的作用 2.tac 1)用途:从最后一行开始显示,tac是cat的倒写。 3.nl 1)用途:在显示文件内容的同时,还显示行号。 ### Linux系统中的文件处理知识点详解 #### 一、查看完整的文件 ##### 1. `cat` (Concatenate) - **语法**: `cat [options] [file-list]` - **用途**: 在标准输出(通常为显示器)上连接并显示指定文件列表 `file-list` 中的所有文件内容。 - **参数**: - `-n`: 显示每一行的行号。 - `-E`: 在每一行的末尾显示符号 `$`。 - `--help`: 显示命令的帮助信息,包括命令的用途以及每个选项的简要解释。 ##### 2. `tac` - **用途**: 与 `cat` 类似,但是从文件的最后一行开始显示。`tac` 是 `cat` 的反向操作。 - **注意**: `tac` 命令没有额外的参数选项。 ##### 3. `nl` - **用途**: 在显示文件内容的同时,自动为每一行添加行号。 - **特点**: 与 `cat -n` 相比,`nl` 可以提供更多的格式控制选项,例如指定行号的宽度、前导字符等。 - **示例**: 使用 `nl` 查看文件时,除了显示文件内容外,还会看到每行前面的行号。 #### 二、每次一页的查看文件 ##### 1. `more` - **语法**: `more [options] [file-list]` - **用途**: 以分页形式显示文件列表 `file-list` 中的文件内容,适合查看较长的文件。 - **特点**: `more` 是较老的分页工具,其功能相对简单。 ##### 2. `less` - **语法**: `less [options] [file-list]` - **用途**: 也是以分页形式显示文件列表 `file-list` 中的文件内容,但相比于 `more` 功能更加强大。 - **参数**: - `-N`: 显示行号。 - `-p pattern`: 在文件中查找匹配 `pattern` 的第一处位置。 - **常用命令**: - `/pattern`: 查找匹配 `pattern` 的位置。 - `n`: 向前重复查找匹配 `pattern` 的位置。 - `N`: 向后重复查找匹配 `pattern` 的位置。 - `q` 或 `Q` 或 `:q` 或 `ZZ`: 退出查看器。 - `!command`: 运行 shell 命令。 #### 三、查看文件的头或尾 ##### 1. `head` - **语法**: `head [options] [file-list]` - **用途**: 显示文件列表 `file-list` 中的文件头部内容,默认显示前 10 行。 - **参数**: - `-N`: 显示开头的 `N` 行。 ##### 2. `tail` - **语法**: `tail [options] [file-list]` - **用途**: 显示文件列表 `file-list` 中的文件尾部内容,默认显示后 10 行。 - **参数**: - `-N`: 显示结尾的 `N` 行。 ##### 3. `od` - **语法**: `od [options] [file-list]` - **用途**: 以二进制方式显示文件内容,主要用于查看非 ASCII 数据文件(如二进制文件)的内容。 - **特点**: 当使用 `vi`, `more`, `less` 等命令无法正确显示文件内容时,可以尝试使用 `od` 命令来查看。 #### 四、练习 - **创建文件**: 创建一个名为 `student_records` 的文件,内容为: ``` John Doe ECE 3.54 Pam Meyer CS 3.61 Jim Davis CS 2.71 Jason Kim ECE 3.97 Amy Nash ECE 2.38 ``` - **应用命令查看文件**: - 使用 `cat` 和 `nl` 查看 `student_records` 文件。 - 使用 `more` 和 `less` 分页查看 `student_records` 文件。 - **查看文件头尾**: - 使用 `head` 查看 `student_records` 文件的前 3 行。 - 使用 `tail` 查看 `student_records` 文件的最后 3 行。 - **使用 `od` 命令**: - 查看 `/bin/ls` 文件的内容。 #### 4.2 文件的复制、转移和删除 ##### 1. 文件的复制 - `cp` - **语法**: `cp [options] source destination` - **用途**: 复制文件或目录。 - **参数**: - `-i`: 如果目标文件已存在,则在覆盖之前提示用户确认。 - `-p`: 保留源文件的权限、时间戳等属性。 - `-r`: 递归复制目录及其子目录。 ##### 2. 文件的转移 - `mv` - **语法**: `mv [options] file1 file2` 或 `mv [options] file-list directory` - **用途**: - 第一个语法: 将 `file1` 改名为 `file2`。 - 第二个语法: 将文件列表 `file-list` 中的所有文件移动到目录 `directory` 下。 - **参数**: - `-f`: 强制移动,即使目标文件存在也覆盖而不提示。 - `-i`: 在覆盖目标文件之前提示用户确认。 ##### 3. 文件的删除 - `rm` - **语法**: `rm [options] file-list` - **用途**: 删除文件列表 `file-list` 中的文件。 - **参数**: - `-f`: 强制删除,即使文件不可写也不给出警告。 - `-i`: 在删除文件之前提示用户确认。 - `-r`: 递归删除目录及其子目录。 ##### 4. 文件大小的确定 - `wc` - **语法**: `wc [options] file-list` - **用途**: 显示文件列表 `file-list` 中的文件的大小,包括行数、单词数和字符数。 - **参数**: - `-c`: 只显示字符数。 - `-l`: 只显示行数。 - `-w`: 只显示单词数。 - **注意**: 若不指定任何参数,则会同时显示行数、单词数和字符数。 #### 练习 - **复制文件**: - 将 `student_records` 文件拷贝为 `student_records.bak`。 - 使用 `-p` 参数拷贝一份 `student_records.bak.p`,然后比较 `student_records.bak` 和 `student_records.bak.p` 文件属性的不同之处。 - **移动文件至目录**: - 在当前目录下新建一个目录 `directory`,将 `student_records`、`student_records.bak` 和 `student_records.bak.p` 移动至该目录中。 - **复制目录**: - 复制 `directory` 目录,新目录命名为 `directoryCopy`。 - **重命名文件**: - 将 `student_records.bak` 文件重命名为 `student_records_backup`。
剩余23页未读,继续阅读
- 粉丝: 1
- 资源: 15
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- redis-standalone.yml redis k8s单点部署
- 2000-2023年省级产业结构升级数据-最新出炉.zip
- Python基于Scrapy兼职招聘网站爬虫数据分析设计(源码)
- zipkin.yml zipkin k8s部署
- YY9706.102-2021医用电气设备第2-47部分
- 通过运用时间序列ARIMA模型与循环神经网络(LSTM)对中国包装机器数量进行预测(python源码)
- 基于ARIMA模型的股票预测(python源码)
- 基于阿里云对象存储的对文件进行批量修改、批量解冻、批量上传
- 山东联通-海信IP501H-GK6323V100C-1+8G-4.4.2-当贝桌面-卡刷包
- IMG_6338.PNG