2011年(5)
分类: 系统运维
2011-10-12 15:33:26
用途:在文件中搜索模式。
-p 显示段落
wc 命令
用途:计算文件中的行数、字数、字节数或字符数。
| -l | 统计行数。 |
more 命令
用途:每次显示一屏文件内容。
more 命令读取文件,而且每次一屏显示文本。该命令在每屏后暂停,并在屏幕底部打印单词 More。如果随后按回车键,more 命令会再显示一行。如果按下空格键,more 命令显示文本的另一屏。
tail 命令
用途:显示文件的最后几行。
| -f | 如果输入文件是常规文件或如果 File 参数指定 FIFO(先进先出),那么 tail 命令不会在复制了输入文件的最后的指定单元后终止,而是继续从输入文件读取和复制额外的单元(当这些单元可用时)。如果没有指定 File 参数,并且标准输入是管道,则会忽略 -f 标志。tail -f 命令可用于监视另一个进程正在写入的文件的增长。 |
| -n Number | 从首行或末行位置来读取指定文件,位置由 Number 变量的符号(+ 或 - 或无)表示,并通过行号 Number 进行位移。 |
rm 命令
用途:除去(解链)文件或目录。
| -e | 在每一个文件被删除后显示消息。 |
| -f | 在除去有写保护的文件前不提示。如果指定的文件不存在,不显示错误消息或返回错误状态。如果 -f 和 -i 标志都被指定,最后指定的标志起作用。 |
| -i | 删除每个文件前提示。但一起使用 -i 和 -r 标志时,rm 命令在删除目录前也提示。如果 -i 和 -f 标志都被指定,最后指定的标志起作用。 |
| -r | 当 File 参数为目录时允许循环的删除目录及其内容。本标志等同于 -R 标志。 |
Vi命令 vi 编辑方式
vi 编辑器按以下方式操作:
| 命令方式 | 当启动 vi 编辑器时,它处于命令方式。您可以输入任何子命令,除了那些指定仅用于文本输入方式的子命令。当子命令和其他方式结束时,vi 编辑器返回命令方式。按 Esc 键取消子命令。 |
| 文本输入方式 | 在此方式中使用 vi 编辑器来添加文本。使用以下任一子命令进入文本输入方式: 子命令、 子命令、 子命令、 子命令、 子命令、 子命令、子命令(其中 x 代表子命令的作用域)、 子命令、 子命令、 子命令和 子命令。输入这些子命令之一后,即可输入文本到编辑缓冲区中。要返回命令方式,按 ESC 键正常退出或按“中断”(Ctrl-C 按键顺序)非正常结束。 |
| 最后行方式 | 带前缀 :(冒号)、/(斜杠)、?(问号)、!(感叹号)或 !!(两个感叹号)的子命令在屏幕底部的显示行上读取输入。当输入初始字符时,vi 编辑器将光标置于屏幕底部,在该处可以输入命令中剩余的字符。按 Enter 键运行该子命令,或按“中断”(Ctrl-C 按键顺序)取消它。当使用 !! 前缀时,光标只在两个感叹号都输入后才移动。当使用 : 前缀进入最后行方式时,如果在指定计数的命令之前使用以下字符,vi 编辑器赋予它们特定含义: % 所有行,而不管光标的位置 $ 最后行 . 当前行 注: 可以使用向上和向下方向键来浏览最后行方式子命令的历史记录。 |
| 左箭头或 h 或 Ctrl-H | 将光标左移一个字符。 |
| 下箭头或 j 或 Ctrl-J 或 Ctrl-N | 将光标下移一行(它仍然在同一列中)。 |
| 上箭头或 k 或 Ctrl-P | 将光标上移一行(它仍然在同一列中)。 |
| 右箭头或 l | 将光标右移一个字符。 |
在命令方式中输入以下子命令。可以通过按 Esc 键取消不完整的命令。
| ^ | 将光标移到第一个非空字符。 |
| 0 | 将光标移到行的开始。 |
| $ | 将光标移到行尾。 |
| fx | 将光标移到下一个 x 字符。 |
| Fx | 将光标移到最后一个 x 字符。 |
| tx | 将光标移到下一个 x 字符的前一列。 |
| Tx | 将光标移到最后一个 x字符的后一列。 |
| ; | 重复最近的 f、F、t 或 T 子命令。 |
| , | 以反方向重复最近的 f、F、t 或 T 子命令。 |
| Number| | 将光标移到指定列。 |
在命令方式中输入以下子命令。
| w | 将光标移到下一个小字。 |
| b | 将光标移到前一个小字。 |
| e | 将光标移到下一个小字的结尾。 |
| W | 将光标移到下一个大字。 |
| B | 将光标移到前一个大字。 |
| E | 将光标移到下一个大字的结尾。 |
在命令方式中输入以下子命令。
| H | 将光标移到屏幕的顶行。 |
| L | 将光标移到屏幕的最后一行。 |
| M | 将光标移到屏幕的中间行。 |
| + | 将光标移到它的第一个非空字符的下一行。 |
| - | 将光标移到它的第一个非空字符的前一行。 |
| Enter | 将光标移到它的第一个非空字符的下一行。 |
| ( | 将光标置于前一句的开始,或前一个 s 表达式(如果处于 LISP 方式)。 |
| ) | 将光标置于下一句的开始,或下一个 s 表达式(如果处于 LISP 方式)。 |
| { | 将光标置于前一个段落的开始,或下一个列表(如果处于 LISP 方式)。 |
| } | 将光标置于下一个段落的开始,如果处于 C 方式,则置于下一节,或者如果处于 LISP 方式则置于下一个列表。 |
| ]] | 将光标置于下一节,或者下一个函数(如果处于 LISP 方式)。 |
| [[ | 将光标置于前一节,或者前一个函数(如果处于 LISP 方式)。 |
| z | 重绘屏幕,并使当前行位于屏幕顶部。 |
| z- | 重绘屏幕,并使当前行位于屏幕底部。 |
| z. | 重绘屏幕,并使当前行位于屏幕中间。 |
| /Pattern/z- | 重绘屏幕,使包含 Pattern 参数指定的字符串的行位于屏幕底部。 |
| Ctrl-U | 向上滚动 1/2 屏幕。 |
| Ctrl-D | 向下滚动 1/2 屏幕。 |
| Ctrl-F | 向前滚动一个屏幕。 |
| Ctrl-B | 向后滚动一个屏幕。 |
| Ctrl-E | 将窗口向下滚动一行。 |
| Ctrl-Y | 将窗口向上滚动一行。 |
| z+ | 向上翻页 |
| z^ | 向下翻页 |
| [Number]G | 将光标置于由 Number 参数指定的行号,或者最后一行(如果没有指定 Number 参数)。 |
| /Pattern | 将光标置于包含由 Pattern 参数指定的字符串的行的下一行。 |
| ?Pattern | 将光标置于包含由 Pattern 参数指定的字符串的行的上一行。 |
| n | 在同一方向重复上次对 Pattern 参数指定的文本的搜索。 |
| N | 在相反方向重复上次对 Pattern 参数指定的文本的搜索。 |
| /Pattern/+Number | 将光标置于与由 Pattern 参数指定的字符串相匹配的行后面的指定行数。 |
| ?Pattern?-Number | 将光标置于与由 Pattern 参数指定的字符串相匹配的行前面的指定行数。 |
| % | 查找与当前光标位置的括号或大括号相匹配的括号或大括号。 |
| " | 将光标移到当前行的前一位置。 |
| " | 将光标移到包含当前行前一位置的行的开始。 |
| mx | 用 x 参数指定的字母标记当前位置。 |
| `x | 将光标移到由 x 参数指定的标记。 |
| 'x | 将光标移到包含由 x 参数指定的标记的行的开始。 |
| aText | 在光标后面插入由 Text 参数指定的文本。按 Esc 键结束文本输入方式。 |
| AText | 添加由 Text 参数指定的文本到行尾。按 Esc 键结束文本输入方式。 |
| iText | 在光标前面插入由 Text 参数指定的文本。按 Esc 键结束文本输入方式。 |
| IText | 在行中的第一个非空字符前插入由 Text 参数指定的文本。按 Esc 键结束文本输入方式。 |
| o | 在当前行的下面添加一个空行。按 Esc 键结束文本输入方式。 |
| O | 在当前行的上面添加一个空行。按 Esc 键结束文本输入方式。 |
仅当处于文本输入方式时使用以下子命令。这些命令在命令方式中有不同的含义。
| Ctrl-D | 回退到前一个自动缩排停止位。 |
| ^ Ctrl-D | 只结束该行的自动缩排。 |
| 0Ctrl-D | 将光标退回到左页边。 |
| Esc | 结束插入并返回到命令状态。 |
| Ctrl-H | 擦除上一个字符。 |
| Ctrl-Q | 如果 xon 禁用则输入任意字符。 |
| Ctrl-V | 输入任意字符 |
| Ctrl-W | 擦除上一个小字。 |
| \ | 引用擦除和行删除符。 |
| Ctrl-? | 中断并结束插入或 Ctrl-D 按键顺序。 |
| C | 更改行的剩余部分(同 c$ 一样)。 |
| cc | 更改一行 |
| cw | 更改一个单词 |
| cwText | 将字更改为 Text 参数指定的文本。 |
| D | 删除行的剩余部分(同 d$ 一样)。 |
| dd | 删除一行。 |
| dw | 删除一个单词。 |
| J | 连接行。 |
| rx | 用 x 指定的字符替换当前字符。 |
| RText | 用 Text 参数指定的文本覆盖字符。 |
| s | 替代字符(同 cl 一样)。 |
| S | 替代行(同 cc 一样)。 |
| u | 撤销上次更改。 |
| x | 删除光标位置的字符。 |
| X | 删除光标前的一个字符(同 dh 一样)。 |
| << | 将一行向左移位。 |
| | 将从光标位置开始的所有行向左移到屏幕末尾。 |
| >> | 将一行向右移位。 |
| >L | 将从光标位置开始的所有行向右移到屏幕末尾。 |
| ~ | 将光标位置的字母更改为相反的大小写格式。 |
| ! | 缩排 LISP。 |
在命令方式中使用以下子命令。
| p | 将撤销缓冲区中的文本还原到光标之后。 |
| P | 将撤销缓冲区中的文本还原到光标之前。 |
| "xp | 将 x 缓冲区中的文本还原 |
| "xd | 将文本删除到 x 缓冲区。 |
| y | 将跟随的对象(例如 word 为 w)放到撤销缓冲区。 |
| "xy | 将跟随的对象放到 x 缓冲区,其中 x 为任意字母。 |
| Y | 将行放到撤销缓冲区。 |
在命令方式中使用以下子命令。
| u | 撤销最后一次更改。 注: 撤销后,光标移到更新过的当前行的第一个非空字符。 |
| U | 如果最后一次更改以来光标还没有离开该行,则恢复当前行。 |
| . | 重复上次更改或增加 "np 命令。 注:
|
| "n | 检索完整行或行块的倒数第 n 次删除。 |
在命令方式中使用以下子命令。
| :w | 将编辑缓冲区内容写入原始文件中。如果正在 编辑器中使用这条子命令,不必输入 :(冒号)。 |
| :w File | 将编辑缓冲区内容写入由 File 参数指定的文件中。 |
| :w! File | 用缓冲区内容覆盖由 File 参数指定的文件。 |
在命令方式中输入以下子命令。
| :e File | 编辑指定文件。如果正在从 编辑器使用这条子命令,不必输入 :(冒号)。 |
| :e! | 重新编辑当前文件并废弃所有更改。 |
| :e + File | 从结尾开始编辑指定文件。 |
| :e + Number File | 从指定行号开始编辑指定文件。 |
| :e # | 编辑备用文件。在用 :e 命令访问另一个文件之前,备用文件通常是以前的文件名。但是,如果当调用一个新文件时更改在当前文件中处于暂挂状态,则该新文件成为备用文件。这条子命令和 子命令相同。 |
| :r File | 通过在当前行下面添加新行,将文件读取到编辑缓冲区。如果正在从 编辑器使用这条子命令,不必输入 :(冒号)。 |
| :r !Command | 通过在当前光标位置下面添加新行,运行指定命令并将其输出放到文件中。 |
| :ta Tag | 从 Tag 标记符位置开始,编辑包含该标记符的文件。要使用这条子命令,必须首先使用 命令创建一个函数名及其位置的数据库。如果正在从 编辑器使用这条子命令,不必输入 :(冒号)。 |
| Ctrl-] | 从标记位置开始,编辑包含与当前字关联的标记的文件。要使用这条子命令,必须首先使用 ctags 命令创建一个函数名及其位置的数据库。Ctrl-T 在先前发出 Ctrl-] 子命令的编辑位置编辑文件。如果已经发出了多个 Ctrl-] 子命令,那么可以使用多个 Ctrl-T 子命令来返回到发出 Ctrl-] 子命令的先前编辑位置。 |
| Ctrl-A | 编辑备用文件。备用文件通常使用前一个当前文件名。但是,如果当调用一个新文件时更改在当前文件中处于暂挂状态,则该新文件成为备用文件。这条子命令和 子命令相同。 |
在中输入以下子命令。
| :n | 编辑命令行上输入的列表中的下一个文件。如果正从 编辑器使用这条子命令,则不需要 :(冒号)。 |
| :n Files | 指定一个要编辑的新文件列表。如果正从 编辑器使用子命令,则不需要 :(冒号)。 |
| Ctrl-G | 显示当前文件名、当前行号、文件中行数和光标定位于文件整体的百分比。 |
在命令方式中输入以下子命令。
| Ctrl-L | 清除和重绘屏幕。 |
| Ctrl-R | 重绘屏幕并消除以 @ (位于符号)标记的空行。 |
| zNumber | 使窗口长度能显示指定行数。 |
以下子命令允许在 vi 编辑器内运行命令。在命令方式中输入这些子命令。
| :sh | 进入 shell 以便能运行多条命令。通过按 Ctrl-D 按键顺序可以返回到 vi 编辑器。如果正在 编辑器中使用这条子命令,则不需要 :(冒号)。 |
| :!Command | 运行指定的命令然后返回到 vi 编辑器。如果正在 编辑器中使用这条子命令,则不需要 :(冒号)。 注: 当跟着 :! 子命令时,#(备用文件)、%(当前文件)和 ! (前面的命令)特殊字符都会扩展。要避免这些字符中的任意字符被扩展,可使用 \ (反斜杠)。 |
| :!! | 重复最近一次的 :!Command 子命令。 |
| Number !!Command | 运行指定的命令并用命令输出替代由 Number 指定的行。如果没有指定数目,则缺省值是 1。如果命令需要标准输入,则指定的行用作输入。 |
| !Object Command | 运行指定命令,并用命令输出替代由 Object 参数指定的对象。如果命令需要标准输入,则指定的对象用作输入。 |
在命令方式中输入以下子命令。
| Q | 在命令方式中进入 编辑器。 |
| ZZ | 退出 vi 编辑器,保存更改。 |
| :q | 退出 vi 编辑器。如果更改了编辑缓冲区的内容,vi 编辑器显示一条警告消息并且不退出。如果正从 编辑器使用这条子命令,则不需要 :(冒号)。 |
| :q! | 退出 vi 编辑器,废弃编辑缓冲区。如果正从 编辑器使用这条子命令,则不需要 :(冒号)。 |
| Esc | 结束文本输入或结束一条不完整的子命令。 |
| Ctrl-? | 中断一条子命令。 |