`

liunx文本文件操作

 
阅读更多

1.如果你只想看文件的前5行,能使用head命令,如:
head -5 /etc/passwd

2. 如果你想查看文件的后10行,能使用tail命令,如:
tail -10 /etc/passwd
tail -f /var/log/messages
参数-f使tail不停地去读最新的内容,这样有实时监视的效果

 

3.清屏Ctrl+L

 

4.退出vi/vim

按 esc 进入普通状态
然后输入:
:wq (保存退出)
:wq!(保存强制退出)
:q(不保存退出)
:q!(不保存强制退出)

 

vi、vim编辑器操作指令快速上手

学习Linux一个很大的问题是很多情况下的操作需要在命令行模式下进行操作,尤其是在是用服务器版的Linux,因此命令行模式下的文本编辑器的操作是学习Linux的一个非常重要的元素。

Linux下最重要的编辑器就是vi及vim,这和图形界面下的文本编辑器有非常大的差别,新手用起来会非常不习惯。vim和vi的操作方法基本一样,只不过vim的编辑界面相对来说好看一点而已。

这里主要介绍下vi 编辑器快速上手的方法,对刚开始准备使用 vi 的朋友可能会有点帮助,高手就不用看了。

方法很简单,去用,就很快会了。当然 vi 的操作确实比较繁多,不知怎么下手。这里提炼出一些常用的,对于所有编辑任务确实已经够用了。既然这样,读完后,马上就开始用,去用,就很快会了。

vi 主要是两种模式,按 Esc 键进入指令模式 ,按 i 键(insert)进入输入模式 (可以输入东西编辑文件了)。

开始时默认进入的是指令模式:

h(左)j(下)k(上)l(右)移动光标。Ctrl+f 向下翻页,Ctrl+b 向上翻页。另外使用键盘的上下左右键和pageup、pagedown键也一样操作。

i 键插入当前光标位置,或 a 键在光标后插入。同时进入输入模式,进行编辑,按 Esc 键再返回命令模式。

x 删除当前字符,dd(按两次 d)删除(剪切)当前行。

cw删除当前单词,并进入编辑模式。

u(undo)撤销。

保存文件:

在指令模式中(最不用动脑筋的办法是乱按一通 Esc 可以保证从编辑模式进入指令模式)按“:”键(冒号)或者“q”可以进入 vi 的末行模式(在最下面可以编写退出/保存的命令),退出末行模式回到命令模式只要按退格键删除“:”字符即可。

输入 :wq(回车)即是保存退出。:w 保存不退出。:q! 退出不保存。

以上内容,花一天熟悉。浏览文件,做点简单编辑已经足够了。注意不要用小键盘,比如上下左右这些,否则就很难学会 vi 了。在 vi 里手不会离开大键盘,用不了多久这些指令就会条件反射,编辑效率比较高。

下面是相对不太常用的:

o 在当前行后插入一行,O 在当前行前插入一行。和 i、a 一样,同时进入输入模式。

数字键 0 跳到行首,$ 跳到行尾。

Shift+j 将当前行和下一行合并成一行。

Ndd 剪切 N 行(N 是一个数字)。

yy 复制当前行。Nyy 复制 N(N 是一个数字)行。按 p 键粘贴。

:N 跳到第 N 行。直接打 N 后按回车,跳到当前行后的第 N 行。N 可以是负数。

在命令模式下输入 /word(回车)来在文件中搜索字符 word。按 n(next)跳到下一个搜索到的字符。

使用“:s/被替换字符/替换字符/g”这行命令来进行搜索替换。比如“:s/^M//g”是把 windows 文件的行尾 ^M 删除掉。其中“^M”的输入方法是按住 Ctrl+v,然后保持 Ctrl 并放掉 v 键,再按 M。

这就开始使用 vi 吧。

分享条

转载请注明:

本文转自:http://www.liusuping.com/ubuntu-linux/linux-vi-vim-caozuo-zhiling.html

 

vi 與 vim 的指令整理

vi 是 unix 家族下最功能強大的文字編輯器,讓用戶只要使用一個鍵盤就可以完成所有的編輯。而 vim 則是 vi 的加強版,甚至在 Windows 上也找得到 vim 的芳蹤。但 vi/vim 眾多的指令卻經常令初學者卻步,以下就是我所整理出來那些令人卻步的指令:

編輯模式

  指令 說明
* i 在游標位置進入編輯模式
  I 在游標行的第一個非空白字元進入編輯模式
* a 在游標位置後進入編輯模式
* A 在游標行的最後一個字元進入編輯模式
* o 向下新增一行,並進入編輯模式
  O 向上新增一行,並進入編輯模式
  cc 刪除游標行(删除后此行为空,注意与dd的区别),並進入編輯模式
* [ESC] 取消指令或退出編輯模式

游標移動

  指令 說明
* gg 移到第一行
* G 移到最後一行
* 行數 → G 移動到第 n 行
  0 移動到該行最前面
  $ 移動到該行最後面
  字數 → [Space] 向右移動 n 個字元
* 行數 → [Enter] 向下移動 n 行

檔案功能

  指令 說明
* :w 存檔 (加 ! 表示強制存檔)
* :w 檔案名稱 另存新檔
* :wq 存檔並退出 vi
  :e 檔案名稱 編輯其它檔案
* :e! 還原至檔案編修前的狀態
  :r 檔案名稱 讀入檔案內容,並加到游標行的後面
* :n 切換到下一個開啟的檔案
* :N 切換到上一個開啟的檔案
* :set nu 顯示行號
* :set nonu 取消行號顯示
* :files 列出所有開啟的檔案

表 2. 移动光标的基本命令

操作单位命令说明
字符 h 左移一字符
l 右移一字符
 
单词 w/W 移动到下一单词的开头
b/B 移动到上一单词的开头
e/E 移动到光标所在单词的末尾
W、B、E 命令操作的单词是以空白字符(空格、Tab)分隔的字串,比如字符串“str1-str2 str3-str4”,对 W、B、E 命令来说是两个单词,而对 w、b、e 命令来说则是四个单词。
j 下移一行
k 上移一行
0 移到当前行开头
^ 移到当前行的第一个非空字符
$ 移到当前行末尾
:n 移动到第 n 行
0 为数字零(zero)
句子 ) 移动到当前句子的末尾
( 移动到当前句子的开头
 
段落 } 移动当前段落的末尾
{ 移到当前段落的开头
 
H 移动到屏幕的第一行
M 移动到屏幕的中间一行
L 移动到屏幕的最后一行
 
Ctrl-f 向前滚动一页
Ctrl-b 向后滚动一页

Ctrl-u 向前滚动半页
Ctrl-d 向后滚动半页
 
文件 G 移动到文件末尾
gg 移动到文件开头
:0 移动到文件第一行
:$ 移动到文件最后一行
0 为数字零(zero)
分享到:
评论

相关推荐

    linux下的文本文件读写操作

    在Linux操作系统中,文本文件的读写操作是程序员必须掌握的基本技能之一。本文将深入探讨如何使用C语言标准库中的`fwrite`和`fread`函数进行文本文件的读写操作,以及如何根据源代码进行修改和扩展。 首先,`fwrite...

    linux C++ 文本文件创建写入以及读取

    在Linux环境下,C++编程语言提供了丰富的文件操作接口,使得我们能够方便地对文本文件进行创建、写入和读取。下面将详细讲解这个过程。 首先,为了在C++中打开或创建一个文本文件,我们需要使用`fstream`库。在程序...

    linux文本界面安装

    Linux 文本界面安装是 Linux 操作系统的一种安装方式,相比图形界面安装,文本界面安装提供了更多的自定义选项和控制权,适合高级用户或需要特殊配置的场景。下面我们将详细介绍 Linux 文本界面安装的过程和相关知识...

    linux文本转换程序

    主要的困扰是Linux文本文件在Windows系统中打开时出现的“黑方框”或“黑格”现象,这是由于行结束符的不同所引起的。Linux系统使用LF(Line Feed,换行)作为行结束符,而Windows系统则使用CRLF(Carriage Return +...

    Linux到WINDOWS文本文件转换程序

    这种差异在跨平台操作时可能会导致文本文件显示不正常,例如,Windows下打开Linux文本文件会看到所有文字挤在一起,没有明显的行间隔。 描述中提到的问题是由于这两种不同的行结束符标准所引起的。Linux系统仅使用...

    LINUX文本操作学习资源

    "LINUX文本操作学习资源"这个压缩包可能包含了帮助用户深入理解和实践Linux文本处理的教程、手册页、脚本示例等内容。下面将详细阐述Linux文本操作的相关知识点。 首先,基础的文本编辑器是必不可少的学习工具。在...

    Linux文本编辑命令

    1. **ed**:它是最早的Linux文本编辑器,基于行的界面使得它对初学者来说可能较为复杂。`ed`命令允许用户在内存中编辑文本,然后将其写入文件。基本用法包括`a`(追加)、`i`(插入)、`d`(删除)和`w`(写入)等。...

    linuxc 文本文档

    【标题】"Linuxc 文本文档"所涉及的知识点主要集中在Linux操作系统以及相关的编程和命令行操作上。Linuxc通常指的是Linux系统中的C语言编程,它涵盖了基础的系统调用、文件操作、进程管理、网络编程等多个方面。在这...

    14-Java操作Linux命令分割合并文本文件1

    标题中的“14-Java操作Linux命令分割合并文本文件1”指的是使用Java编程语言来执行Linux命令,以实现对文本文件的分割和合并操作。在处理大文件时,由于内存限制,不能一次性将整个文件读入,因此需要采用分块处理的...

    把Linux中的文本文件格式转为Windows的

    Linux和Windows系统之间的文本文件格式差异就是一个常见的例子。本文将深入探讨如何将Linux中的文本文件格式转换为Windows可识别的格式,以便于在两个平台间无缝协作。 Linux和Windows在处理文本文件时遵循不同的行...

    Linux操作实验-练习用pico 、vi、emacs 编辑器编辑文本文件

    ### Linux操作实验——掌握pico、vi与emacs编辑器 #### 实验背景及目标 ...通过上述步骤,用户能够系统地学习并实践Linux环境下pico、vi与emacs三种常用文本编辑器的基本操作,从而提高在Linux平台上的工作效率。

    Linux文本编辑器vi的使用

    ### Linux文本编辑器vi的使用 #### 一、vi编辑器概述 vi是Linux乃至UNIX中最常用且功能强大的文本编辑器之一。对于Linux系统管理员来说,掌握vi编辑器的使用至关重要,因为它几乎适用于所有类型的文本文件编辑,...

    linux下基于QT的txt文本编辑程序(源代码)

    总的来说,这个项目是一个很好的学习资源,可以帮助开发者掌握Qt框架在Linux环境下的应用,理解文本编辑器的实现细节,包括GUI设计、文件操作、文本处理等。同时,通过阅读和分析源代码,还能了解到如何组织和结构化...

    Linux文件IO操作

    ### Linux文件IO操作详解 #### 基本概念 Linux 文件 I/O 操作是学习 Linux 应用开发的基础,尤其对于初学者来说至关重要。本文旨在详细介绍 Linux 下的文件 I/O 操作及其相关概念。 #### 文件 在 Linux 系统中,...

    Linux操作系统试题及答案.pdf

    Linux操作系统试题及答案.pdfLinux操作系统试题及答案.pdfLinux操作系统试题及答案.pdfLinux操作系统试题及答案.pdfLinux操作系统试题及答案.pdfLinux操作系统试题及答案.pdf

    Linux文件系统和文本操作【Linux操作系统教程2】

    Linux文件系统和文本操作【Linux操作系统教程2】

    linux文本转换程序-源代码

    这些差异导致了在Windows下打开Linux文本文件时出现黑方框或其他乱码现象。 这个名为"Linux文本转换程序"的源代码正是为了解决这个问题而设计的。它能够将Linux格式的文本文件转换为Windows可以正确识别的格式,...

    Linux操作系统Vi-文本编辑器实验报告.doc

    "Linux操作系统Vi-文本编辑器实验报告" Vi 文本编辑器是 Linux 操作系统中的一种全屏幕文本编辑器,具有文本编辑所需的所有功能,适用于各种版本的 Unix/Linux,适用于各种类型的终端,使用灵活快捷。 Vi 文本编辑...

    linux相关文档操作手册

    Linux相关文档操作手册是针对Linux操作系统中文档处理的详尽指南。Linux是一个广泛使用的开源操作系统,它的文件系统和文档管理有着独特的特性和命令行工具。本手册将涵盖以下几个主要的知识点: 1. **Linux文件...

Global site tag (gtag.js) - Google Analytics