shell笔记整理1---vim编译器基础应用(参考鸟哥)
1、linux中的配置文件都已是以ASCII的纯文本的形式存在
2、vim文本编译器。
- 一般模式:用vi打开的一个文件直接进入的就是一般模式,这个模式可以移动光标和删除字符,复制粘贴等,但是不能比那几文本内容。
一般模式中比较重要的操作:
x: 向后删除一个字符。
X:向前删除一个字符。
nx:向后删除n个字符,同理X。
dd:删除光标所在的一整行,同时也可以使用ndd来删除n行。
d1G:删除光标坐在到第一行所有的数据。
dG:删除光标到最后一行的所有数据。
yy:复制光标所在的那一行。同时可以使用nyy命令。y1G,yG。
p:进行光标下一行的粘贴。P进行光标上一行的粘贴。
u:复原前一个操作。
ctrl-r:重复上一次的操作。
a,o,i:进入插入模式INSERT。
r:进入REPLACE模式,r会替换光标所在的字符一次。R会一直替换光标所在的文字
- 编辑模式:在界面出现INSERT或者REPLACE字样就是编辑模式,【ESC】退出编辑模式。
- 命令行模式:在一般模式中我们可以输入“:,/,?”三个中的任何按钮可以进行大量的字符读取和替换。要使用下面的指令,先使用:
w:标记数据写入硬盘。
w!:强制写入,但是不一定成功。
q:离开vi编译器。
wq:离开后保存。
ZZ:若文件没有改动,则不保存离开,若文件被改动,则保存退出。
w[filename]:可以理解为另存为。
r[filename]:读入另一个文件。加载到光标后面。
n1,n2 w [filename]:将n1和n2的内容保存成为filename文件。
set num:显示行号,通过set nonu来取消。
n1,n2s/word1/word2/g:n1和n2代表的是行数,在n1和n2之间查找word1替换为word2。
1,$s/word1/word2/g:可以理解为全文,也可以添加c来进行替换确认。
/word:表示查找word。
n:表示查找下一个符合的字符串。
N:表示查找上一个符合的字符串。
- vim常见的操作:
filename.swap:如果你的因为某些原因断线了,导致你文件没有保存,这时候我们就使用.swap文件,文件里面会给出你的错误原因和解决方案,R载入.swap中的内容,但是swap不会被删除,保存后应该删除swap文件,D:表示不载入直接删除swap文件。
多文件操作和多窗口功能。
块选择:首先使用ctirl-v进入快选择(visual block),这时光标可以上下移动但是会泛白,可以选择一列也可以是一行,然后按y进行复制,回到一般模式后按下p进行复制。
.vimrc和.viminfo:这两个文件中存放的是set命令相关的。
编码问题:中文编码有utf8、gb2312、big5等,我们要想正常显示就要使用相同的编码。注意下面的几个问题:
linux系统默认的编码在/etc/sysconfig/i18n文件中。
终端bash这个和LANG变量有关。
文件本身的编码。
软件编码。
解决办法:使用iconv
iconv命令:-f:原来的编码的方式。
--list:列出iconv支持的编码。
-t:to后面是新的编码方式。
-o file:保留原本的文件。
shell笔记整理1---vim编译器基础应用(参考鸟哥)的更多相关文章
- MySQL 笔记整理(1) --基础架构,一条SQL查询语句如何执行
最近在学习林晓斌(丁奇)老师的<MySQL实战45讲>,受益匪浅,做一些笔记整理一下,帮助学习.如果有小伙伴感兴趣的话推荐原版课程,很不错. 1) --基础架构,一条SQL查询语句如何执行 ...
- Python学习笔记整理总结【语言基础篇】
一.变量赋值及命名规则① 声明一个变量及赋值 #!/usr/bin/env python # -*- coding:utf-8 -*- # _author_soloLi name1="sol ...
- Python学习笔记整理总结【web基础】【web/HTML/CSS/JavaScript/DOM/jQuery】
一.HTML HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记).相当于定义统一的一套规则,大家都来遵守他,这样就可以 ...
- Linux学习笔记3-VI 和 VIM的使用
vi: Visual Interface vim: VI iMproved 全屏编辑器, Linux系统下最强大的两款编辑器,vi和vim,vi是Linux本身自带的一款编辑器,纯文本编辑不带任何效果 ...
- 拒绝从入门到放弃_《鸟哥的 Linux 私房菜 — 基础学习篇(第三版)》必读目录
目录 目录 前言 关于这本书 必看知识点 最后 前言 相信部分刚进入这个行业的新同学会对一个问题感到疑惑,为什么从培训学校出来的学员不被欢迎? 这里记录下一些我个人的看法(博主也曾有面试新员工的经历) ...
- Linux下VIM编译器的使用以及shell编程基础
VIM编译器的安装与使用 vim编辑器安装 在CentOS中,执行:yum -y install vim 普通模式 h: 左移一个字符 j: 下移一行 k: 上移一行 l: 右移一个字符 PageDo ...
- 学习ReactNative笔记整理一___JavaScript基础
学习ReactNative笔记整理一___JavaScript基础 ★★★笔记时间- 2017-1-9 ★★★ 前言: 现在跨平台是一个趋势,这样可以减少开发和维护的成本.第一次看是看的ReactNa ...
- bash shell笔记1 脚本基础知识
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://twentyfour.blog.51cto.com/945260/505644 * ...
- java笔记整理
Java 笔记整理 包含内容 Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...
随机推荐
- 使用DatePickerDialog、TimePickerDialog
DatePickerDialog与TimerPicker的功能比较简单,用户也简单,只要如下两步即可. ①通过new关键字创建DatePickerDialog.TimePickerDialog实例,调 ...
- Java线程:线程交互
一.基础知识 java.lang.Object的类的三个方法: void notify():唤醒在此对象监视器上等待的单个线程. void notifyAll():唤醒在此对象监视器上等待的所有线程. ...
- 第一部分 记事本搞定第一个C#程序和编译过程剖析
记事本搞定第一个C#程序 进行下面三个步骤:编码,编译和托管运行. 1.记事本进行编码: using System; class Program{ public static void Main() ...
- 手机APP测试思路及测试要点
一 手机APP测试基本思路: 测试计划--测试方案--测试用例--执行: 很多小公司都没有具体的需求,项目时间也比较紧,而且流程也不是很严谨,在这样的情况之下,作为测试的我们,该怎样去对项目进行用例 ...
- java cooki的使用
session: 当新客户端发现一个HTTP请求时服务端会创建一个session.并分配一个sessionID作为服务端来客户端的识别,session对象会 保存在服务端.此时session对象处天N ...
- 深圳尚学堂:Android APP的测试流程
每一个新开发的软件都避免不了测试,我在这里总结了一些Android系统的移动端APP测试的一些测试流程,希望可以给大家一些帮助. 1. UI 测试App主要核ui与实际设计的效果图是否一致:交互方面的 ...
- js精要之构造函数
// 枚举对象 var obj = {} obj.name = "bob"; obj.age = "; obj.sex = "boy"; consol ...
- asp.net权限认证:OWIN实现OAuth 2.0 之密码模式(Resource Owner Password Credential)
asp.net权限认证系列 asp.net权限认证:Forms认证 asp.net权限认证:HTTP基本认证(http basic) asp.net权限认证:Windows认证 asp.net权限认证 ...
- SQLSERVER 中实现类似Mysql的 INSERT ON DUPLICATE KEY UPDATE
通过SQLServer创建索引时,有一个IGNORE_DUP_KEY的选项,可以类似实现. IGNORE_DUP_KEY = { ON | OFF } 指定对唯一聚集索引或唯一非聚集索引执行多行插入操 ...
- MySql存储过程的使用
MySql存储过程跟sql server 有一定的区别,使用说明和步骤如下 使用说明 创建存储过程 MySQL中,创建存储过程的基本形式如下: CREATE PROCEDURE sp_name ([p ...