Linux基础知识培训文档格式.docx

上传人:b****6 文档编号:16188870 上传时间:2022-11-21 格式:DOCX 页数:21 大小:40.24KB
下载 相关 举报
Linux基础知识培训文档格式.docx_第1页
第1页 / 共21页
Linux基础知识培训文档格式.docx_第2页
第2页 / 共21页
Linux基础知识培训文档格式.docx_第3页
第3页 / 共21页
Linux基础知识培训文档格式.docx_第4页
第4页 / 共21页
Linux基础知识培训文档格式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

Linux基础知识培训文档格式.docx

《Linux基础知识培训文档格式.docx》由会员分享,可在线阅读,更多相关《Linux基础知识培训文档格式.docx(21页珍藏版)》请在冰豆网上搜索。

Linux基础知识培训文档格式.docx

vim+numfile:

从第num行开始;

vim+/stringfile:

打开file,并将光标停留在第一个找到的string上。

vim--remotefile:

用已有的vim进程打开指定的文件。

如果你不想启用多个vim会话,这个很有用。

但要注意,如果你用vim,会寻找名叫VIM的服务器;

如果你已经有一个gvim在运行了,你可以用gvim--remotefile在已有的gvim中打开文件。

(3)文档操作

:

efile--关闭当前编辑的文件,并开启新的文件。

如果对当前文件的修改未保存,vi会警告。

e!

file--放弃对当前文件的修改,编辑新的文件。

e+file--开始新的文件,并从文件尾开始编辑。

e+nfile--开始新的文件,并从第n行开始编辑。

enew--编译一个未命名的新文档。

(CTRL-Wn)

e--重新加载当前文档。

--重新加载当前文档,并丢弃已做的改动。

e#或ctrl+^--回到刚才编辑的文件,很实用。

f或ctrl+g--显示文档名,是否修改,和光标位置。

ffilename--改变编辑的文件名,这时再保存相当于另存为。

gf--打开以光标所在字符串为文件名的文件。

w--保存修改。

n1,n2wfilename--选择性保存从某n1行到另n2行的内容。

:

wq--保存并退出。

qa--放弃并退出。

ZZ--保存并退出。

x--保存并退出。

q[uit]——退出当前窗口。

(CTRL-Wq或CTRL-WCTRL-Q)

saveasnewfilename--另存为

browsee--会打开一个文件浏览器让你选择要编辑的文件。

如果是终端中,则会打开netrw的文件浏览窗口;

如果是gvim,则会打开一个图形界面的浏览窗口。

实际上:

browse后可以跟任何编辑文档的命令,如sp等。

用browse打开的起始目录可以由browsedir来设置:

setbrowsedir=last--用上次访问过的目录(默认);

setbrowsedir=buffer--用当前文件所在目录;

setbrowsedir=current--用当前工作目录;

Sex--水平分割一个窗口,浏览文件系统;

Vex--垂直分割一个窗口,浏览文件系统;

(4)光标的移动

●基本移动

以下移动都是在normal模式下。

h或退格:

左移一个字符;

l或空格:

右移一个字符;

j:

下移一行;

k:

上移一行;

gj:

移动到一段内的下一行;

gk:

移动到一段内的上一行;

+或Enter:

把光标移至下一行第一个非空白字符。

-:

把光标移至上一行第一个非空白字符。

w:

前移一个单词,光标停在下一个单词开头;

W:

移动下一个单词开头,但忽略一些标点;

e:

前移一个单词,光标停在下一个单词末尾;

E:

移动到下一个单词末尾,如果词尾有标点,则移动到标点;

b:

后移一个单词,光标停在上一个单词开头;

B:

移动到上一个单词开头,忽略一些标点;

ge:

后移一个单词,光标停在上一个单词末尾;

gE:

同ge,不过‘单词’包含单词相邻的标点。

(:

前移1句。

):

后移1句。

{:

前移1段。

}:

后移1段。

fc:

把光标移到同一行的下一个c字符处

Fc:

把光标移到同一行的上一个c字符处

tc:

把光标移到同一行的下一个c字符前

Tc:

把光标移到同一行的上一个c字符后

;

配合f&

t使用,重复一次

:

t使用,反向重复一次

上面的操作都可以配合n使用,比如在正常模式(下面会讲到)下输入3h,则光标向左移动3个字符。

0:

移动到行首。

g0:

移到光标所在屏幕行行首。

^:

移动到本行第一个非空白字符。

g^:

同^,但是移动到当前屏幕行第一个非空字符处。

$:

移动到行尾。

g$:

移动光标所在屏幕行行尾。

n|:

把光标移到递n列上。

nG:

到文件第n行。

n<

cr>

移动到第n行。

$<

移动到最后一行。

H:

把光标移到屏幕最顶端一行。

M:

把光标移到屏幕中间一行。

L:

把光标移到屏幕最底端一行。

gg:

到文件头部。

G:

到文件尾部。

●翻屏

ctrl+f:

下翻一屏。

ctrl+b:

上翻一屏。

ctrl+d:

下翻半屏。

ctrl+u:

上翻半屏。

ctrl+e:

向下滚动一行。

ctrl+y:

向上滚动一行。

n%:

到文件n%的位置。

zz:

将当前行移动到屏幕中央。

zt:

将当前行移动到屏幕顶端。

zb:

将当前行移动到屏幕底端。

●标记

使用标记可以快速移动。

到达标记后,可以用Ctrl+o返回原来的位置。

Ctrl+o和Ctrl+i很像浏览器上的后退和前进。

m{a-z}:

标记光标所在位置,局部标记,只用于当前文件。

m{A-Z}:

标记光标所在位置,全局标记。

标记之后,退出Vim,重新启动,标记仍然有效。

`{a-z}:

移动到标记位置。

'

{a-z}:

移动到标记行的行首。

`{0-9}:

回到上[2-10]次关闭vim时最后离开的位置。

``:

移动到上次编辑的位置。

'

也可以,不过``精确到列,而'

精确到行。

如果想跳转到更老的位置,可以按C-o,跳转到更新的位置用C-i。

`"

移动到上次离开的地方。

`.:

移动到最后改动的地方。

marks显示所有标记。

delmarksab--删除标记a和b。

delmarksa-c--删除标记a、b和c。

delmarksac-f--删除标记a、c、d、e、f。

delmarks!

--删除当前缓冲区的所有标记。

helpmark-motions查看更多关于mark的知识。

(5)插入文本

●基本插入

i:

在光标前插入;

一个小技巧:

按8,再按i,进入插入模式,输入=,按esc进入命令模式,就会出现8个=。

这在插入分割线时非常有用,如30i+<

esc>

就插入了36个+组成的分割线。

I:

在当前行第一个非空字符前插入;

gI:

在当前行第一列插入;

a:

在光标后插入;

A:

在当前行最后插入;

o:

在下面新建一行插入;

O:

在上面新建一行插入;

rfilename在当前位置插入另一个文件的内容。

[n]rfilename在第n行插入另一个文件的内容。

r!

date在光标处插入当前日期与时间。

同理,:

command可以将其它shell命令的输出插入当前文档。

●改写插入

c[n]w:

改写光标后1(n)个词。

c[n]l:

改写光标后n个字母。

c[n]h:

改写光标前n个字母。

[n]cc:

修改当前[n]行。

[n]s:

以输入的文本替代光标之后1(n)个字符,相当于c[n]l。

[n]S:

删除指定数目的行,并以所输入文本代替之。

注意,类似cnw,dnw,ynw的形式同样可以写为ncw,ndw,nyw。

(6)剪切复制和寄存器

●剪切和复制、粘贴

[n]x:

剪切光标右边n个字符,相当于d[n]l。

[n]X:

剪切光标左边n个字符,相当于d[n]h。

y:

复制在可视模式下选中的文本。

yyorY:

复制整行文本。

y[n]w:

复制一(n)个词。

y[n]l:

复制光标右边1(n)个字符。

y[n]h:

复制光标左边1(n)个字符。

y$:

从光标当前位置复制到行尾。

y0:

从光标当前位置复制到行首。

m,ny<

复制m行到n行的内容。

y1G或ygg:

复制光标以上的所有行。

yG:

复制光标以下的所有行。

yaw和yas:

复制一个词和复制一个句子,即使光标不在词首和句首也没关系。

d:

删除(剪切)在可视模式下选中的文本。

d$orD:

删除(剪切)当前位置到行尾的内容。

d[n]w:

删除(剪切)1(n)个单词

d[n]l:

删除(剪切)光标右边1(n)个字符。

d[n]h:

删除(剪切)光标左边1(n)个字符。

d0:

删除(剪切)当前位置到行首的内容

[n]dd:

删除(剪切)1(n)行。

m,nd<

剪切m行到n行的内容。

d1G或dgg:

剪切光标以上的所有行。

dG:

剪切光标以下的所有行。

daw和das:

剪切一个词和剪切一个句子,即使光标不在词首和句首也没关系。

d/f<

这是一个比较高级的组合命令,它将删除当前位置到下一个f之间的内容。

p:

在光标之后粘贴。

P:

在光标之前粘贴。

●文本对象

aw:

一个词

as:

一句。

ap:

一段。

ab:

一块(包含在圆括号中的)。

y,d,c,v都可以跟文本对象。

●寄存器

a-z:

都可以用作寄存器名。

"

ayy把当前行的内容放入a寄存器。

A-Z:

用大写字母索引寄存器,可以在寄存器中追加内容。

如"

Ayy把当前行的内容追加到a寄存器中。

reg显示所有寄存器的内容。

"

不加寄存器索引时,默认使用的寄存器。

*:

当前选择缓冲区,"

*yy把当前行的内容放入当前选择缓冲区。

+:

系统剪贴板。

+yy把当前行的内容放入系统剪贴板。

(7)查找与替换

●查找

/something:

在后面的文本中查找something。

?

something:

在前面的文本中查找something。

/pattern/+number:

将光标停在包含pattern的行后面第number行上。

/pattern/-number:

将光标停在包含pattern的行前面第number行上。

n:

向后查找下一个。

N:

向前查找下一个。

可以用grep或vimgrep查找一个模式都在哪些地方出现过,

其中:

grep是调用外部的grep程序,而:

vimgrep是vim自己的查找算法。

用法为:

vim[grep]/pattern/[g][j]files

g的含义是如果一个模式在一行中多次出现,则这一行也在结果中多次出现。

j的含义是grep结束后,结果停在第j项,默认是停在第一项。

vimgrep前面可以加数字限定搜索结果的上限,如

1vim/pattern/%只查找那个模式在本文件中的第一个出现。

其实vimgrep在读纯文本电子书时特别有用,可以生成导航的目录。

比如电子书中每一节的标题形式为:

n.xxxx。

你就可以这样:

vim/^d{1,}./%

然后用:

cw或:

copen查看结果,可以用C-wH把quickfix窗口移到左侧,

就更像个目录了。

●替换

s/old/new-用new替换当前行第一个old。

s/old/new/g-用new替换当前行所有的old。

n1,n2s/old/new/g-用new替换文件n1行到n2行所有的old。

%s/old/new/g-用new替换文件中所有的old。

%s/^/xxx/g-在每一行的行首插入xxx,^表示行首。

%s/$/xxx/g-在每一行的行尾插入xxx,$表示行尾。

所有替换命令末尾加上c,每个替换都将需要用户确认。

如:

%s/old/new/gc,加上i则忽略大小写(ignore)。

还有一种比替换更灵活的方式,它是匹配到某个模式后执行某种命令,

语法为:

[range]g/pattern/command

例如:

%g/^xyz/normaldd。

表示对于以一个空格和xyz开头的行执行normal模式下的dd命令。

关于range的规定为:

如果不指定range,则表示当前行。

m,n:

从m行到n行。

最开始一行(可能是这样)。

最后一行

.:

当前行

%:

所有行

●正则表达式

高级的查找替换就要用到正则表达式。

\d:

表示十进制数(我猜的)

\s:

表示空格

\S:

非空字符

\a:

英文字母

\|:

表示或

\.:

表示.

{m,n}:

表示m到n个字符。

这要和\s与\a等连用,如\a\{m,n}表示m到n个英文字母。

{m,}:

表示m到无限多个字符。

**:

当前目录下的所有子目录。

helppattern得到更多帮助。

(8)排版

●基本排版

<

<

向左缩进一个shiftwidth

>

>

向右缩进一个shiftwidth

ce(nter)本行文字居中

le(ft)本行文字靠左

ri(ght)本行文字靠右

gq对选中的文字重排,即对过长的文字进行断行

gqq重排当前行

gqnq重排n行

gqap重排当前段

gqnap重排n段

gqnj重排当前行和下面n行

gqQ重排当前段对文章末尾

J拼接当前行和下一行

gJ同J,不过合并后不留空格。

●拼写检查

setspell-开启拼写检查功能

setnospell-关闭拼写检查功能

]s-移到下一个拼写错误的单词

[s-作用与上一命令类似,但它是从相反方向进行搜索

z=-显示一个有关拼写错误单词的列表,可从中选择

zg-告诉拼写检查器该单词是拼写正确的

zw-与上一命令相反,告诉拼写检查器该单词是拼写错误的

●统计字数

g^g可以统计文档字符数,行数。

将光标放在最后一个字符上,用字符数减去行数可以粗略统计中文文档的字数。

以上对Mac或Unix的文件格式适用。

如果是Windows文件格式(即换行符有两个字节),字数的统计方法为:

字符数-行数*2。

(9)编辑多个文件

●一次编辑多个文件

我们可以一次打开多个文件,如

via.txtb.txtc.txt

使用:

next(:

n)编辑下一个文件。

2n编辑下2个文件。

previous或:

N编辑上一个文件。

wnext,保存当前文件,并编辑下一个文件。

wprevious,保存当前文件,并编辑上一个文件。

args显示文件列表。

nfilenames或:

argsfilenames指定新的文件列表。

vi-ofilenames在水平分割的多个窗口中编辑多个文件。

vi-Ofilenames在垂直分割的多个窗口中编辑多个文件。

●多标签编辑

vim-pfiles:

打开多个文件,每个文件占用一个标签页。

tabe,tabnew--如果加文件名,就在新的标签中打开这个文件,否则打开一个空缓冲区。

^wgf--在新的标签页里打开光标下路径指定的文件。

tabn--切换到下一个标签。

Control+PageDown,也可以。

tabp--切换到上一个标签。

Control+PageUp,也可以。

[n]gt--切换到下一个标签。

如果前面加了n,就切换到第n个标签。

第一个标签的序号就是1。

tabsplit--将当前缓冲区的内容在新页签中打开。

tabc[lose]--关闭当前的标签页。

tabo[nly]--关闭其它的标签页。

tabs--列出所有的标签页和它们包含的窗口。

tabm[ove][N]--移动标签页,移动到第N个标签页之后。

如tabm0当前标签页,就会变成第一个标签页。

●缓冲区

buffers或:

ls或:

files显示缓冲区列表。

ctrl+^:

在最近两个缓冲区间切换。

bn--下一个缓冲区。

bp--上一个缓冲区。

bl--最后一个缓冲区。

b[n]或:

[n]b--切换到第n个缓冲区。

nbw(ipeout)--彻底删除第n个缓冲区。

nbd(elete)--删除第n个缓冲区,并未真正删除,还在unlisted列表中。

ba[ll]--把所有的缓冲区在当前页中打开,每个缓冲区占一个窗口。

(10)分屏编辑

vim-ofile1file2:

水平分割窗口,同时打开file1和file2

vim-Ofile1file2:

垂直分割窗口,同时打开file1和file2

●水平分割

split(:

sp)--把当前窗水平分割成两个窗口。

(CTRL-Ws或CTRL-WCTRL-S)注意如果在终端下,CTRL-S可能会冻结终端,请按CTRL-Q继续。

splitfilename--水平分割窗口,并在新窗口中显示另一个文件。

nsplit(:

nsp)--水平分割出一个n行高的窗口。

[N]new--水平分割出一个N行高的窗口,并编辑一个新文件。

(CTRL-Wn或CTRL-WCTRL-N)

ctrl+wf--水平分割出一个窗口,并在新窗口打开名称为光标所在词的文件。

C-wC-^--水平分割一个窗口,打开刚才编辑的文件。

●垂直分割

vsplit(:

vsp)--把当前窗口分割成水平分布的两个窗口。

(CTRL-Wv或CTRLCTRL-V)

[N]vne[w]--垂直分割出一个新窗口。

vertical水平分割的命令:

相应的垂直分割。

●关闭子窗口

qall--关闭所有窗口,退出vim。

wall--保存所有修改过的窗口。

only--只保留当前窗口,关闭其它窗口。

(CTRL-Wo)

close--关闭当前窗口,CTRL-Wc能实现同样的功能。

(象:

q:

x同样工作)

●调整窗口大小

ctrl+w+--当前窗口增高一行。

也可以用n增高n行。

ctrl+w---当前窗口减小一行。

也可以用n减小n行。

ctrl+w_--当前窗口扩展到尽可能的大。

也可以用n设定行数。

resizen--当前窗口n行高。

ctrl+w=--所有窗口同样高度。

nctrl+w_--当前窗口的高度设定为n行。

ctrl+w<

--当前窗口减少一列。

也可以用n减少n列。

ctrl+w>

--当前窗口增宽一列。

也可以用n增宽n列。

ctrl+w|--当前窗口尽可能的宽。

也可以用n设定列数。

●切换和移动窗口

如果支持鼠标,切换和调整子窗口的大小就简单了。

ctrl+wctrl+w:

切换到下一个窗口。

或者是ctrl+ww。

ctrl+wp:

切换到前一个窗口。

ctrl+wh(l,j,k):

切换到左(右,下,上)的窗口。

ctrl+wt(b):

切换到最上(下)面的窗口。

BR>

ctrl+wH(L,K,J):

将当前窗口移动到最左(右、上、下)面。

ctrl+wr:

旋转窗口的位置。

ctrl+wT:

将当前的窗口移动到新的标签页上。

(11)快速编辑

●改变大小写

~:

反转光标所在字符的大小写。

可视模式下的U或u:

把选中的文本变为大写或小写。

gu(U)接范围(如$,或G),可以把从光标当前位置到指定位置之间字母全部转换成小写或大写。

如ggguG,就是把开头到最后一行之间的字母全部变为小写。

再如gu5j,把当前行和下面四行全部变成小写。

●替换(normal模式)

r:

替换光标处的字符,同样支持汉字。

R:

进入替换模式,按esc回到正常模式。

●撤消与重做(normal模式)

[n]u:

取消一(n)个改动。

undo5--撤销5个改变。

undolist--你的撤销历史。

ctrl+r:

重做最后的改动。

U:

取消当前行中所有的改动。

earlier4m--回到4分钟前

later55s--前进55秒

●宏

.--重复上一个编辑动作

qa:

开始录制宏a(键盘操作记录)

q:

停止录制

@a:

播放宏a

(12)编辑特殊文件

●文件加解密

vim-xfile:

开始编辑一个加密的文件。

X--为当前文件设置密码。

setkey=--去除文件的密码。

这里是滇狐总结的比较高级的vi技巧。

●文件的编码

e++enc=utf8filename,让vim用utf-8的编码打开这个文件。

w++enc=gbk,不管当前文件什么编码,把它转存成gbk编码。

setfenc或:

setfileencoding,查看当前文件的编码。

在vimrc中添加setfileencoding=ucs-bom,utf-8,cp936,vim会根据要打开的文件选择合适的编码。

注意:

编码之间不要留空格。

cp936对应于gbk编码。

ucs-bom对应于windows下的文件格式。

让vim正确处理文件格式和文件编码,有赖于~/.vimrc的正确配置

●文件格式

大致有三种文件格式:

unix,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1