这个是本人在有一定的实战经验下,通过看书和看教学视频,结合一些人的学习需求总结出来的Linux /Unix 下Shell 脚本(命令)用法指南。为求好用,里面加入了不少例子。相信各位读者能很快上手。注:一定要多动手。 ### Linux/Unix Shell 脚本指南精简版 #### 一、编辑器使用技巧 **1. Vi编辑器** - **向下查找**: 在Normal模式下使用 `/` 加上关键词进行搜索,例如 `/tcp` 用于查找 `tcp`。 - **向上查找**: 使用 `?` 加上关键词进行反向搜索,例如 `?tcp`。 - **单次替换**: 使用 `:s` 命令加源词、目标词来进行替换,例如 `:s/abc/bcd` 将 `abc` 替换为 `bcd`。 - **全局替换**: 在 `:s` 命令后加上 `/g` 来实现全局替换,例如 `:s/ad/bc/g`。 - **指定范围替换**: 在 `:` 和 `s` 之间加入行号范围,例如 `:1,5s/abc/ddas/g` 表示在第1行至第5行中将 `abc` 替换为 `ddas`。 **2. Gedit编辑器** - **简介**: 图形界面编辑器,适合于需要语法高亮等功能的用户。 - **启动**: 通过命令行输入 `gedit 文件名` 来启动编辑器并打开指定文件。 - **特点**: 支持语法高亮,操作直观,但在远程连接场景下可能响应较慢。 #### 二、文件操作 **1. 罗列文件详细信息** - 使用 `ls -l` 命令来查看文件详细信息,例如 `ls -l *.txt` 可以列出所有 `.txt` 后缀的文件详情。 #### 三、正则表达式基础 | 符号 | 意义 | |---|---| | * | 匹配前面字符的零次或多次重复 | | . | 匹配任意字符 | | ^ | 匹配行首 | | $ | 匹配行尾 | | [] | 匹配字符集合 | | \ | 转义符,屏蔽元字符的特殊意义 | | \<\> | 精确匹配符号 | | \{n\} | 匹配前面字符出现n次 | | \{n,\} | 匹配前面字符至少出现n次 | | \{n,m\} | 匹配前面字符出现n次到m次 | **实例解析** - **任意次数重复**: `hel*o` 可以匹配 `helo`, `hello`, `helllllo` 等。 - **任意单个字符**: `...73.` 匹配任何以 `...73` 结尾且后面还有一个任意字符的字符串。 - **行首匹配**: `^cloud` 匹配以 `cloud` 开头的行。 - **行尾匹配**: `micky$` 匹配以 `micky` 结尾的行。 - **字符集合**: `[A-Za-z][A-Za-z]*` 匹配所有英文单词。 - **转义符**: `\.\$\^` 屏蔽特殊字符意义。 - **精确匹配**: `\<the\>` 精确匹配单词 `the`。 - **重复次数**: `JO\{3\}B` 匹配 `JOOOB`;`JO\{3,\}B` 匹配 `JOOOB`, `JOOOOB`, `JOOOOOB` 等。 **扩展元字符** | 符号 | 意义 | |---|---| | ? | 匹配0个或1个在其之前的那个普通字符 | | + | 匹配1个或多个在其之前的那个普通字符 | | () | 表示一个字符集合或用在表达式中 | | | | 表示“或”的意义 | | **通配符** | | * | 任意位的任意字符 | | ? | 任意单个字符 | | ^ | 取反意义 | #### 四、grep工具使用 **基本语法**: `grep [选项] [模式] [文件...]` - **-c**: 输出匹配行的数量。 - **-i**: 忽略大小写。 - **-h**: 查询多文件时不显示文件名。 - **-l**: 只列出符合匹配的文件名,不列出具体匹配行。 - **-n**: 列出所有匹配行,并显示行号。 - **-s**: 不显示不存在或无匹配文本的错误信息。 - **-v**: 显示不包含匹配文本的所有行。 - **-w**: 匹配整词。 - **-r**: 递归搜索,不仅搜索当前工作目录,也搜索子目录。 ### 总结 本文档旨在提供Linux/Unix环境下Shell脚本的基础知识与实用技巧。通过对Vi编辑器和Gedit编辑器的操作介绍,以及对文件操作命令、正则表达式和grep工具的具体用法详解,希望能帮助读者快速掌握这些技能并在实际工作中应用自如。特别强调的是,实践是非常重要的学习过程,只有不断尝试和使用,才能真正理解和掌握这些知识点。希望读者能够根据自己的学习进度逐步深入探索,不断提升自己的技术水平。
剩余34页未读,继续阅读
- wangyun_12162013-01-07还不错的资料,比较全。适合上手。
- sh_sj_wuneng2013-11-19还行,不错不错,最喜欢别人总结的东西,转变成自己总结的东西
- 粉丝: 122
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助