澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

vim命令大全,Linux的基础命令

2019-10-30 作者:澳门新萄京官方网站   |   浏览(185)

1.linux的目录结构

  bin:(binaries)存放二进制可执行文件
  sbin(super user binaries)存放二进制可执行文件
  etc:(etcetera)存放系统配置文件
  usr(unix shared resources)用于存放共享的系统资源
  home存放用户文件的根目录
  root超级用户目录
  dev(devices)存放设备文件
  lib(library)存放跟文件系统中的程序运行所需要的共享库及内核模块
  mnt(mount)系统管理员安装临时文件系统的安装点
  boot存放用于系统引导时使用的各种文件
  tmp(temporary)用于存放各种临时文件
  var(variable)用于存放运行时需要改变数据的文件

Linux的简介
1.Linux的概述
Linux是基于Unix的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境。Linux是由Linus Torvalds(林纳斯·托瓦兹)起初开发的,由于源代码的开放性,现在已经衍生出了千上百种不同的Linux系统。
Linux系统的应用非常广泛,不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,比如手机、平板电脑、路由器等。尤其在这里提及一下,我们熟知是Android程序最底层就是运行在linux系统上的。

Vim命令合集

2.切换目录命令cd

  cd test 切换到test目录
  cd .. 切换到上级目录
  cd / 切换到系统跟目录
  cd ~ 切换到用户主目录
  cd - 切换到上一个所在目录

2.Linux的分类
(1)Linux根据市场需求不同,基本分为两个方向:
1)图形化界面版:注重用户体验,类似window操作系统,但目前成熟度不够
2)服务器版:没有好看的界面,是以在控制台窗口中输入命令操作系统的,类似于DOS,是我们假设服务器的最佳选择

命令历史

以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。

3.目录的操作命令(增删改查)

增加目录:

  mkdir 目录名称

mkdir test 就是在当前目录下产生一个test目录

查看目录:

  ls

ls:就是在当前目录下的所有目录和文件

ls -a:可以看到该目录下的所有文件和目录,包括隐藏的

ls -l:可以缩写成ll,可以看到该目录下的文件的详细信息

查询目录:

  find 目录 参数

find/root -name '*test*':查找/root下的与test相关的目录文件

修改目录名称:

  mv目录名称 新目录名称

mv oldTest newTest:在当前目录下将oldTest目录的名字改为newTest

注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包进行重命名操作

移动目录的位置(剪切):

   mv 目录名称 目录的新位置

mv newTest /usr:将当前目录下的newTest文件剪切到usr目录下

拷贝目录:

  cp -r 目录名称 目录拷贝的目标位置(r代表递归拷贝)

cp -r /usr/newTest /test:将usr下的newTest文件拷贝到test目录下

注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包.拷贝文件和压缩包时不用写-r递归

删除目录: 

  rm -rf 目录

rm -rf newTest/:删除当前目录下的newTest文件和它里面的所有文件,并且 不需要询问

(2)Linux根据原生程度,又分为两种:
1)内核版本:在Linus领导下的内核小组开发维护的系统内核的版本号
2)发行版本:一些组织或公司在内核版基础上进行二次开发而重新发行的版本

启动vim

在命令行窗口中输入以下命令即可

vim 直接启动vim

vim filename 打开vim并创建名为filename的文件

4.文件的操作命令

文件的创建

  touch 文件名称(空文件)

touch a.txt:在当前目录下创建一个名为a.txt的空文件

文件的查看

  cat/more/less/tail 文件

使用cat只能显示最后一屏的内容
使用more可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看
使用less可以使用键盘上的PgUp和PgDn向上和向下翻页,q结束查看
使用tail -f 文件 可以对某个文件进行动态监控,就像tomcat的日志文件,会随着程序的运行,日志会变化.

修改文件的内容

  vim 文件

vim的启动命令:vim filename 打开vim并创建一个名为filename的文件

文件命令
打开单个文件 vim file
同时打开多个文件:vim file1,file2......
在vim窗口打开一个新文件:open file
在新窗口中打开文件:split file
切换到下一个文件:bn
切换到上一个文件:bp
查看当前打开的文件列表,当前正在编辑的文件会用[]括起来:args
打开远程文件,比如ftp或者share folder

  :e ftp://192.168.10.76/abc.txt
  :e \qadrivetest1.txt

vim的模式

  正常模式(按ESC [键进入)左下角显示文件或为空
  插入模式(按i键进入)左下角显示--INSERT--
  可视模式:左下角显示--VISUAL--

vim的插入命令 

  i:在当前位置前插入
  I:在当前行首插入
  a:在当前位置后插入
  A:在当前行尾插入
  o:在当前行之后插入
  O:在当前行之前插入

vim的查找命令

  /text 查找text,按n键查找下一个,按N键查找前一个
  ?text 查找text,反向查找,按n键查找下一个,按N键查找前一个
  :set ignorecase 忽略大小写的查找
  :set noignorecase不忽略大小写的查找
  :set hlsearch 高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配
  :set nohlsearch关闭高亮搜索显示
  查找很长的词,如果一个词很长,键入麻烦,可以将光标移动到该词上,按*或者#键

即可以该单词进行搜索,相当于/搜索,而#命令相当于?搜索

vim的替换命令

  

  ra 将当前字符替换为a,当前字符即光标所在字符
vim命令大全,Linux的基础命令。  s/old/new/ 用old替换new,替换当前行的第一个匹配
  s/old/new/g 用old替换new,替换当前行的所有匹配
  %s/old/new/ 用old替换new,替换所有行的第一个匹配
  %s/old/new/g 用old替换new,替换整个文件的所有匹配
  ddp 交换光标所在行和其下紧邻的一行

vim的移动命令

  h左移一个字符
  l右移一个字符(一般用w代替)
  k上移一个字符
  j下移一个字符

以上四个命令可以配合数字使用,比如20j就是向下移动20行

  w向前移动一个单词,如果已到行尾,则转至下一行行首,此命令块,可以代替l命令
  b向后移动一个单词,3b向后移动三个单词
  ^移动到本行第一个非空白字符上
  0(数字0)移动到本行第一个字符上
  $移动到行尾
  gg移动到文件头
  G移动到文件尾
  f(find)命令也可以用于移动,fx将找到光标后第一个x的字符,3fd将找到第三个为d的字符
  F,同f,反向查找
  :10 回车:就是跳转到10行,10G跳转到10行
  Ctrl e向下滚动一行
  Ctrl y向上滚动一行
  Ctrl d向下滚动半屏
  Ctrl u向上滚动半屏
  Ctrl f向下滚动一屏
  Ctrl b向上滚动一屏

vim的撤销和重做

  u(Undo)撤销
  U撤销整行的操作
  Ctrl r重做

vim的删除命令

  x 删除当前行
  3x 删除当前光标开始向后三个字符
  X删除当前字符的前一个字符
  dl删除当前字符
  dh删除当前一个字符
  dd删除当前行
  dj删除上一行
  dk删除下一行
  10d删除当前行开始的10行
  D删除当前字符至行尾
  d$删除当前字符之后的所有字符(本行)
  kdgg删除当前行之前所有行(不包括当前行)
  jdG(jd shift g)删除当前行之后的所有行
  :1,10d:删除1-10行
澳门新萄京官方网站,  :11,$d:删除11行以及后面的所有行
  :1,$d:删除所有行
  J:合并两行

vim的拷贝和粘贴

  yy拷贝当前行
  nyy拷贝当前行开始的n行
  p在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行进行粘贴
  P在当前行前粘贴
  :1,10 co 20 将1-10行插入到第20行
  :1,$ co $将整个文件复制一份并添加到末尾
  ddp交换当前行和其下一行
  xp交换当前字符和其后一个字符

vim的剪切命令

  正常模式下按v(逐字)或V(逐行)进入可视模式,然后用jklh命令移动即可选择某些行或字符,再按d即可剪切
  ndd剪切当前行之后的n行,利用p命令可以对剪切的内容进行粘贴
  :1,10d将1-10行剪切,利用p命令可将剪切后的内容进行粘贴
  :1,10 m 20将第1-10行移动到20行之后

vim退出命令

  :wq保存并退出
  :ZZ保存并退出
  :qvim命令大全,Linux的基础命令。!强制退出并忽略所有更改
  :e!放弃所有更改,并打开原来文件

vim的窗口命令

  :split或new 打开一个新窗口,光标在顶层的窗口上
  :split file或:new file 用新窗口打开文件
  split打开的窗口都是横向的,使用vsplit可以纵向打开窗口
  Ctrl ww 移动到下一个窗口
  Ctrl wj 移动到下方的窗口
  Ctrl wk 移动到上方的窗口
  :close 最后一个窗口不能使用此命令,可以防止意外退出vim
  :q 如果是最后一个被关闭的窗口,那么将退出vim

vim执行shell命令

  :!ls 列出当前目录 下文件
  :!perl -c script.pl 检查perl脚本语法,可以不用退出vim
  :!perl scrip.pl 执行perl脚本,可以不用退出vim
  :suspend或Ctrl Z 挂起vim,回到shell,按fg可以返回vim

vim的注释命令

  perl程序中#开始的行为注释,所以要注释某些行,只需在行首加入#
  3,5 s/^/#/g 注释第3-5行
  3,5 s/^/#//g 解除3-5行的注释
  1,$ s/^/#/g 注释整个文档
  :%s/^/#/g 注释整个文档,

vim的帮助命令

  :help or F1 显示整个帮助
  :help xxx 显示xxx的帮助
  :help 'number' vim选项的帮助用单引号括起
  :help<Esc> 特殊键的帮助用<>扩起
  :help -t vim启动参数的帮助用-

vim其他非编辑命令

  .重复前一次命令
  :set ruler? 查看是否设置了ruler,在.vimrc中,使用set命令设置的选项都可以通过这个命令查看
  :scriptnames 查看vim脚本文件的位置,比如.vimrc文件,语法文件及plugin等.
  :set list 显示非打印字符,如tab,空格,行尾,如果tab无法显示,请确定用set
  :syntax 列出已经定义的语法项
  :syntax clear 清除已定义的语法规则
  :syntax case match 大小写敏感,int和Int将视为不同的语法元素
  :syntax case ignore 大小写无关,int和Int将视为相同的语法元素,并使用同样的配色方案

Linux的安装
1.虚拟机的安装
因为Linux也是一个系统,本质上跟我们电脑的Window没有区别,所以我们要学习Linux就首先将我们电脑的Window系统换成Linux系统,或者在我们电脑上安装双系统,听上去是不是很可怕。其实我们可以在我们电脑上安装一个软件,这个软甲可以模拟一台或多台虚拟的电脑机器,这就是虚拟机
虚拟器常用的有两种:
VMware(威睿)公司的虚拟机软件,功能强大,收费产品
VitrualBox 虚拟机软件 Oracle公司的虚拟机软件,免费商品
由于市场上VMware使用率很高,所以我们安装VMware 《VMware安装手册》

文件命令

打开单个文件

vim file

同时打开多个文件

vim file1 file2 file3 ...

在vim窗口中打开一个新文件

:open file

在新窗口中打开文件

:split file

切换到下一个文件

:bn

切换到上一个文件

:bp

查看当前打开的文件列表,当前正在编辑的文件会用[]括起来。

:args

打开远程文件,比如ftp或者share folder

:e ftp://192.168.10.76/abc.txt

:e \qadrivetest1.txt

5.打压文件的操作命令

  linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的,而一般情况下打包和压缩是一起进行的,
打包并压缩后的文件的后缀名一般.tar.gz

  tar -zcvf 打包压缩后的文件名 要打包压缩的文件,z代表用gzip压缩命令进行压缩,c代表打包文件,v显示运行过程,f代表指定文件名
tar -zcvf xxx.tar.gz a.txt b.txt:打包当前目录下的a.txt和b.txt文件成名为xxx.tar.gz压缩文件

  解压压缩包:tar -xvf,x代表解压,
  tar -xvf xxx.tar.gz:将当前目录下名为xxx.tar.gz的压缩文件解压
  tar -xvf xxx.tar.gz -C/usr,C代表指定解压的位置,这段代表将这个文件解压到usr文件下

2.CentOS的安装
CentOS是一个Linux的发行版本,是目前企业中用来做应用服务器系统的主要版本,CentOS的安装,其实是将该系统安装到VMware虚拟机软件中,让VMware虚拟机软件模拟出一台Linux系统的电脑。CentOS6.5安装请见《CentOS安装手册》

vim的模式

正常模式(按Esc或Ctrl [进入) 左下角显示文件名或为空
插入模式(按i键进入) 左下角显示--INSERT--
可视模式(不知道如何进入) 左下角显示--VISUAL--

6.其他命令

  pwd:显示当前所在位置

  grep要搜索的字符串,要搜索的文件

grep to test.conf:搜索当前目录下的test.conf文件中的包含字符串to的行

  | 将前一个命令的输出作为本次目录的输入

ps -ef | grep system :代表乍看当前系统中所有的进程中包括system字符串的进程

  ps -ef 查看当前系统中运行的进程

  kill -9 进程的pid 杀死进程

vi的三种状态:命令模式、插入模式、底行模式
:w filename(将文章以指定的文件名filename保存)
:wq(输入[wq],存盘并退出vi)
:q!(输入q!,不存盘强制退出vi)

导航命令

% 括号匹配

7.网络通信命令 

  查看当前系统的网卡信息:ifconfig
  查看与某台机的连接情况:ping
  查看当前系统的端口使用:netstat -an

命令行模式功能键:
按[i]切换进入插入模式[insert mode]后是从光标当前位置开始输入文件
按[a]进入插入模式后是从光标所在位置的下一个位置开始输入文字
按[o]进入插入模式后是插入新的一行,从行首开始输入文字。

插入命令

i 在当前位置生前插入

I 在当前行首插入

a 在当前位置后插入

A 在当前行尾插入

o 在当前行之后插入一行

O 在当前行之前插入一行

8.linux的权限命令

  每个文件/目录等都具有权限,通过ls -|命令我们可以查看某个目录下的文件或目录的权限
  r读取权
  w写入权
  x执行权
  -无操作权
  最前面的符号:d代表目录,-代表文件,|代表连接(可以认为是window中的快捷方式)

chmod u=rwx,g=rw,o=r aaa.txt:代表修改当前目录下aaa.txt文件的权限为属主有全部权限,属组所在的组有读写权限,其他用户为只读

移动光标,用[h]、[j]、[k]、[l],分别控制左、下、上、右。
按「ctrl」 「b」:屏幕往"后"移动一页。?
  按「ctrl」 「f」:屏幕往"前"移动一页。?
  按「ctrl」 「u」:屏幕往"后"移动半页。?
  按「ctrl」 「d」:屏幕往"前"移动半页。?
  按「gg」:移到文章的开头。?
  按「G」:移动到文章的最后。?
  按「$」:移动到光标所在行的"行尾"。?
  按「^」:移动到光标所在行的"行首"?
  按「w」:光标跳到下个字的开头?
  按「e」:光标跳到下个字的字尾?
  按「b」:光标回到上个字的开头?
  按「#l」:光标移到该行的第#个位置

查找命令

/text  查找text,按n健查找下一个,按N健查找前一个。

?text  查找text,反向查找,按n健查找下一个,按N健查找前一个。

vim中有一些特殊字符在查找时需要转义  .*[]^%/?~$

:set ignorecase  忽略大小写的查找

:set noignorecase  不忽略大小写的查找

查找很长的词,如果一个词很长,键入麻烦,可以将光标移动到该词上,按*或#键即可以该单词进行搜索,相当于/搜索。而#命令相当于?搜索。

:set hlsearch  高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配。

:set nohlsearch  关闭高亮搜索显示

:nohlsearch  关闭当前的高亮显示,如果再次搜索或者按下n或N键,则会再次高亮。

:set incsearch  逐步搜索模式,对当前键入的字符进行搜索而不必等待键入完成。

:set wrapscan  重新搜索,在搜索到文件头或尾时,返回继续搜索,默认开启。

删除文字?
  「x」:每按一次,删除光标所在位置的"后面"一个字符。?
  「#x」:例如,「6x」表示删除光标所在位置的"后面"6个字符。?
  「X」:大写的X,每按一次,删除光标所在位置的"前面"一个字符。?
  「#X」:例如,「20X」表示删除光标所在位置的"前面"20个字符。?
  「dd」:删除光标所在行。?
  「#dd」:从光标所在行开始删除#行?

替换命令

ra 将当前字符替换为a,当期字符即光标所在字符。

s/old/new/ 用old替换new,替换当前行的第一个匹配

s/old/new/g 用old替换new,替换当前行的所有匹配

%s/old/new/ 用old替换new,替换所有行的第一个匹配

%s/old/new/g 用old替换new,替换整个文件的所有匹配

:10,20 s/^/    /g 在第10行知第20行每行前面加四个空格,用于缩进。

ddp 交换光标所在行和其下紧邻的一行。

复制?
  「yw」:将光标所在之处到字尾的字符复制到缓冲区中。?
  「#yw」:复制#个字到缓冲区?
  「yy」:复制光标所在行到缓冲区。?
  「#yy」:例如,「6yy」表示拷贝从光标所在的该行"往下数"6行文字。?
  「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与"y"有关的复制命令都必须与"p"配合才能完成复制与粘贴功能。

移动命令

h 左移一个字符
l 右移一个字符,这个命令很少用,一般用w代替。
k 上移一个字符
j 下移一个字符
以上四个命令可以配合数字使用,比如20j就是向下移动20行,5h就是向左移动5个字符,在Vim中,很多命令都可以配合数字使用,比如删除10个字符10x,在当前位置后插入3个!,3a!<Esc>,这里的Esc是必须的,否则命令不生效。

w 向前移动一个单词(光标停在单词首部),如果已到行尾,则转至下一行行首。此命令快,可以代替l命令。

b 向后移动一个单词 2b 向后移动2个单词

e,同w,只不过是光标停在单词尾部

ge,同b,光标停在单词尾部。

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

0(数字0)移动到本行第一个字符上,

<HOME> 移动到本行第一个字符。同0健。

$ 移动到行尾 3$ 移动到下面3行的行尾

gg 移动到文件头。 = [[

G(shift g) 移动到文件尾。 = ]]

f(find)命令也可以用于移动,fx将找到光标后第一个为x的字符,3fd将找到第三个为d的字符。

F 同f,反向查找。

跳到指定行,冒号 行号,回车,比如跳到240行就是 :240回车。另一个方法是行号 G,比如230G跳到230行。

Ctrl e 向下滚动一行

Ctrl y 向上滚动一行

Ctrl d 向下滚动半屏

Ctrl u 向上滚动半屏

Ctrl f 向下滚动一屏

Ctrl b 向上滚动一屏

替换?
  「r」:替换光标所在处的字符。?
  「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

撤销和重做

u 撤销(Undo)
U 撤销对整行的操作
Ctrl r 重做(Redo),即撤销的撤销。

回复上一次操作?
  「u」:如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次"u"可以执行多次回复。

删除命令

x 删除当前字符

3x 删除当前光标开始向后三个字符

X 删除当前字符的前一个字符。X=dh

dl 删除当前字符, dl=x

dh 删除前一个字符

dd 删除当前行

dj 删除上一行

dk 删除下一行

10d 删除当前行开始的10行。

D 删除当前字符至行尾。D=d$

d$ 删除当前字符之后的所有字符(本行)

kdgg 删除当前行之前所有行(不包括当前行)

jdG(jd shift g)   删除当前行之后所有行(不包括当前行)

:1,10d 删除1-10行

:11,$d 删除11行及以后所有的行

:1,$d 删除所有行

J(shift j)  删除两行之间的空行,实际上是合并两行。

更改?
  「cw」:更改光标所在处的字到字尾处?
  「c#w」:例如,「c3w」表示更改3个字

拷贝和粘贴

yy 拷贝当前行

nyy 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行。

p  在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴。

shift p 在当前行前粘贴

:1,10 co 20 将1-10行插入到第20行之后。

:1,$ co $ 将整个文件复制一份并添加到文件尾部。

正常模式下按v(逐字)或V(逐行)进入可视模式,然后用jklh命令移动即可选择某些行或字符,再按y即可复制

ddp交换当前行和其下一行

xp交换当前字符和其后一个字符

跳至指定的行?
  「ctrl」 「g」列出光标所在行的行号。?
  「#G」:例如,「15G」,表示移动光标至文章的第15行行首。

剪切命令

正常模式下按v(逐字)或V(逐行)进入可视模式,然后用jklh命令移动即可选择某些行或字符,再按d即可剪切

ndd 剪切当前行之后的n行。利用p命令可以对剪切的内容进行粘贴

:1,10d 将1-10行剪切。利用p命令可将剪切后的内容进行粘贴。

:1, 10 m 20 将第1-10行移动到第20行之后。

列出行号?
 「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。

退出命令

:wq 保存并退出

ZZ 保存并退出

:q! 强制退出并忽略所有更改

:e! 放弃所有修改,并打开原来文件。

跳到文件中的某一行?
 「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。

窗口命令

:split或new 打开一个新窗口,光标停在顶层的窗口上

:split file或:new file 用新窗口打开文件

split打开的窗口都是横向的,使用vsplit可以纵向打开窗口。

Ctrl ww 移动到下一个窗口

Ctrl wj 移动到下方的窗口

Ctrl wk 移动到上方的窗口

关闭窗口

:close 最后一个窗口不能使用此命令,可以防止意外退出vim。

:q 如果是最后一个被关闭的窗口,那么将退出vim。

ZZ 保存并退出。

关闭所有窗口,只保留当前窗口

:only

录制宏

按q键加任意字母开始录制,再按q键结束录制(这意味着vim中的宏不可嵌套),使用的时候@加宏名,比如qa。。。q录制名为a的宏,@a使用这个宏。

查找字符?
 「/关键字」:先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。?
 「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。

执行shell命令

:!command

:!ls 列出当前目录下文件

:!perl -c script.pl 检查perl脚本语法,可以不用退出vim,非常方便。

:!perl script.pl 执行perl脚本,可以不用退出vim,非常方便。

:suspend或Ctrl - Z 挂起vim,回到shell,按fg可以返回vim。

保存文件?
 「w」:在冒号输入字母「w」就可以将文件保存起来。

注释命令

perl程序中#开始的行为注释,所以要注释某些行,只需在行首加入#

3,5 s/^/#/g 注释第3-5行

3,5 s/^#//g 解除3-5行的注释

1,$ s/^/#/g 注释整个文档。

:%s/^/#/g 注释整个文档,此法更快。

离开vi?
「q」:按「q」就是退出,如果无法离开vi,可以在「q」后跟一个「!」强制离开vi。
「qw」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

帮助命令

:help or F1 显示整个帮助
:help xxx 显示xxx的帮助,比如 :help i, :help CTRL-[(即Ctrl [的帮助)。
:help 'number' Vim选项的帮助用单引号括起
:help <Esc> 特殊键的帮助用<>扩起
:help -t Vim启动参数的帮助用-
:help i_<Esc> 插入模式下Esc的帮助,某个模式下的帮助用模式_主题的模式
帮助文件中位于||之间的内容是超链接,可以用Ctrl ]进入链接,Ctrl o(Ctrl

  • t)返回

vi命令列表?:
h?
左移光标一个字符?
l?
右移光标一个字符?
k?
光标上移一行?
j?
光标下移一行?
^?
光标移动至行首?
0?
数字"0",光标移至文章的开头?
G?
光标移至文章的最后?
$?
光标移动至行尾?
Ctrl f?
向前翻屏?
Ctrl b?
向后翻屏?
Ctrl d?
向前翻半屏?
Ctrl u?
向后翻半屏?
i?
在光标位置前插入字符?
a?
在光标所在位置的后一个字符开始增加?
o?
插入新的一行,从行首开始输入?
ESC?
从输入状态退至命令状态?
x?
删除光标后面的字符?
#x?
删除光标后的#个字符?
X?
(大写X),删除光标前面的字符?
#X?
删除光标前面的#个字符?
dd?
删除光标所在的行?
#dd?
删除从光标所在行数的#行?
yw?
复制光标所在位置的一个字?
#yw?
复制光标所在位置的#个字?
yy?
复制光标所在位置的一行?
#yy?
复制从光标所在行数的#行?
p?
粘贴?
u?
取消操作?
cw?
更改光标所在位置的一个字?
#cw?
更改光标所在位置的#个字?

其他非编辑命令

. 重复前一次命令

:set ruler?  查看是否设置了ruler,在.vimrc中,使用set命令设制的选项都可以通过这个命令查看

:scriptnames  查看vim脚本文件的位置,比如.vimrc文件,语法文件及plugin等。

:set list 显示非打印字符,如tab,空格,行尾等。如果tab无法显示,请确定用set lcs=tab:>-命令设置了.vimrc文件,并确保你的文件中的确有tab,如果开启了expendtab,那么tab将被扩展为空格。

Vim教程
在Unix系统上
$ vimtutor
在Windows系统上
:help tutor

:syntax 列出已经定义的语法项
:syntax clear 清除已定义的语法规则
:syntax case match 大小写敏感,int和Int将视为不同的语法元素
:syntax case ignore 大小写无关,int和Int将视为相同的语法元素,并使用同样的配色方案

行命令模式下的一些指令?
w filename?
储存正在编辑的文件为filename?
wq filename?
储存正在编辑的文件为filename,并退出vi?
q!?
放弃所有修改,退出vi?
set nu?
显示行号?
/或??
查找,在/后输入要查找的内容?
n?
与/或?一起使用,如果查找的内容不是想要找的关键字,按n或向后(与/联用)或向前(与?联用)继续查找,直到找到为止。

linux目录切换命令
cd usr 切换到该目录下usr目录
cd ../ 切换到上一层目录
cd / 切换到系统根目录
cd ~ 切换到用户主目录
cd - 切换到上一个所在目录

目录的操作命令(增删改查)
(1)增加目录操作(增)
命令:mkdir 目录名称
示例:在根目录 / 下 mkdir test,就会在根目录 / 下产生一个test问目录

(2)查看目录(查)
命令:ls [-al] 父目录
示例:在根目录 / 下使用ls,可以看到该目录下的所有的目录和文件
示例:在根目录 / 下使用ls -a,可以看到该目录下的所有文件和目录,包括隐藏的
示例:在根目录 / 下使用ls -l,可以看到该目录下的所有目录和文件的详细信息
注意:ls -l 可以缩写成ll

(3)寻找目录(查)
命令:find 目录 参数
示例:查找/root下的与test相关的目录(文件) find /root -name ‘test*’

(4)修改目录的名称(改)
命令:mv 目录名称 新目录名称
示例:test目录下有一个oldTest目录,使用mv oldTest newTest命令修改

(5)移动目录的位置---剪切(改)
命令:mv 目录名称 目录的新位置
示例:在test下将newTest目录剪切到 /usr下面,使用mv newTest /usr
注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行重命名的操作

(6)拷贝目录(改)
命令:cp -r 目录名称 目录拷贝的目标位置 -----r代表递归拷贝
示例:将/usr下的newTest拷贝到根目录下的test中,使用cp -r /usr/newTest /test

注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归

(7)删除目录(删)
命令:rm [-rf] 目录
示例:删除/usr下的newTest,进入/usr下使用rm -r newTest
示例:删除/test下的newTest而不需要询问强制删除,在/test下使用rm -rf newTest
注意:无论删除任何目录或文件,都直接使用rm -rf 目录/文件/压缩包

文件的操作命令(增删改查)
(1)文件的创建(增)
命令:touch 文件名称 ----- 空文件
示例:在test目录下创建一个空文件 touch aaa.txt
(2)文件的查看(查)
命令:cat/more/less/tail 文件
示例:使用cat查看/etc/sudo.conf文件,只能显示最后一屏内容
示例:使用more查看/etc/sudo.conf文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看
示例:使用less查看/etc/sudo.conf文件,可以使用键盘上的PgUp和PgDn向上和向下翻页,q结束查看
示例:使用tail -10 查看/etc/sudo.conf文件的后10行,Ctrl C结束
(3)修改文件的内容(改)
命令:vim 文件
示例:编辑/test下的aaa.txt文件,使用vim aaa.txt
但此时并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式,可以 编辑文件
编辑完成后,按下Esc,退回命令模式
此时文件虽然已经编辑完成,但是没有保存,需输入冒号:进入底行模式,在底行模式下输入wq代表写入内容并退出,即保存;输入q!代表强制退出不保存。

关于vim使用过程:
在实际开发中,使用vim编辑器主要作用就是修改配置文件:
vim 文件------>进入文件----->命令模式------>按i进入编辑模式----->编辑文件------->按Esc进入底行模式----->输入:wq/q!

(1)打包并压缩文件
Linux中的打包文件一般是以.tar结尾的,压缩的命令一般是以.gz结尾的。
而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。
命令:tar -zcvf 打包压缩后的文件名 要打包压缩的文件
其中:z:调用gzip压缩命令进行压缩
c:打包文件
v:显示运行过程
f:指定文件名
示例:打包并压缩/test下的所有文件 压缩后的压缩包指定名称为xxx.tar.gz
tar -zcvf xxx.tar.gz aaa.txt bbb.txt ccc.txt
或:tar -zcvf xxx.tar.gz /test/*

(2)解压压缩包(重点)
命令:tar [-xvf] 压缩文件
其中:x:代表解压
示例:将/test下的xxx.tar.gz解压到当前目录下
tar -xvf xxx.tar.gz
示例:将/test下的xxx.tar.gz解压到根目录/usr下
tar -xvf xxx.tar.gz -C /usr------C代表指定解压的位置

(1)显示当前所在位置
pwd
(2)搜索命令
命令:grep 要搜索的字符串 要搜索的文件
示例:搜索/usr/sudu.conf文件中包含字符串to的行
示例:搜索/usr/sudu.conf文件中包含字符串to的行 to要高亮显示

(3)管道命令
命令:| 将前一个命令的输出作为本次目录的输入
示例:查看当前系统中所有的进程中包括system字符串的进程

(4)查看进程
命令:ps -ef
示例:查看当前系统中运行的进程

(5)杀死进程
命令:kill -9 进程的pid

(6)网络通信命令
查看当前系统的网卡信息:ifconfig
查看与某台机器的连接情况:ping

设置/修改IP地址
如果要让IP地址永久生效,需要编辑网卡配置文件
使用VI编辑器设置,如 vi /etc/sysconfig/network-scripts/ifcfg-eth0

查看当前系统的端口使用:netstat -an

(7)关机命令
关机指令为:shutdown?
Shutdown –h now 立马关机
Shutdown –r now 系统立马重启

Linux的权限命令
权限是Linux中的重要概念,每个文件/目录等都具有权限,通过ls -l命令我们可以查看某个目录下的文件或目录的权限
示例:在随意某个目录下ls -l

修改文件/目录的权限的命令:chmod
示例:修改/test下的aaa.txt的权限为属主有全部权限,属主所在的组有读写权限,
其他用户只有读的权限
chmod u=rwx,g=rw,o=r aaa.txt

关于远程工具乱码的解决:
使用远程工具进行连接时,如果linux有中文文件或目录,显示时会出现乱码,原因是linux编码是UTF-8,而远程工具默认是当前系统本地编码即GBK。所以解决方案是统一两者编码就OK了,但是该SSH Secure工具不能设置编码,所以通过修改linux的系统编码的方式进行统一编码。
在linux的/etc/sysconfig目录下有一个i18n的文件代表linux的系统编码
将其从UTF-8修改成GBK重新连接linux即可:

Linux的软件安装
1.JDK安装
注意:rpm与软件相关命令 相当于window下的软件助手 管理软件
步骤:
1)查看当前Linux系统是否已经安装java
输入 rpm -qa | grep java

2)卸载两个openJDK
输入rpm -e --nodeps 要卸载的软件

3)上传jdk到linux
4)安装jdk运行需要的插件yum install glibc.i686(选做)
5)解压jdk到/usr/local下 tar –xvf jdk-7u71-linux-i586.tar.gz –C /usr/local
6)配置jdk环境变量,打开/etc/profile配置文件,将下面配置拷贝进去
#set java environment
JAVA_HOME=/usr/local/jdk1.7.0_71
CLASSPATH=.:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
7)重新加载/etc/profile配置文件 source /etc/profile

2.Mysql安装
步骤:
1)查看CentOS自带的mysql
输入 rpm -qa | grep mysql
2)将自带的mysql卸载
3)上传Mysql到linux
4)安装mysql的依赖(选做)
yum -y install libaio.so.1 libgcc_s.so.1 libstdc .so.6
yum update libstdc -4.4.7-4.el6.x86_64
5)解压Mysql到/usr/local/下的mysql目录(mysql目录需要手动创建)内
cd /usr/local
mkdir mysql
tar -xvf MySQL-5.6.22-1.el6.i686.rpm-bundle.tar -C /usr/local/mysql
6)在/usr/local/mysql下安装mysql
安装服务器端:rpm -ivh MySQL-server-5.6.22-1.el6.i686.rpm
安装客户端:rpm -ivh MySQL-client-5.6.22-1.el6.i686.rpm
7)启动mysql
service mysql start
8)将mysql加到系统服务中并设置开机启动
加入到系统服务:chkconfig --add mysql
自动启动:chkconfig mysql on
9)登录mysql
mysql安装好后会生成一个临时随机密码,存储位置在/root/.mysql_secret
msyql –u root -p
10)修改mysql的密码
set password = password('root');
11)开启mysql的远程登录
默认情况下mysql为安全起见,不支持远程登录mysql,所以需要设置开启 远程登录mysql的权限
登录mysql后输入如下命令:
grant all privileges on *.* to 'root' @'%' identified by 'root';
flush privileges;
12)开放Linux的对外访问的端口3306
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/init.d/iptables save ---将修改永久保存到防火墙中

3.Tomcat安装
步骤:
1)上传Tomcat到linux上
2)解压Tomcat到/usr/local下
3)开放Linux的对外访问的端口8080
/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
/etc/rc.d/init.d/iptables save
4)启动关闭Tomcat
进入tomcat的bin下启动:./startup.sh
进入tomcat的bin下关闭:./shutdown.sh

 

本文由澳门新萄京官方网站发布于澳门新萄京官方网站,转载请注明出处:vim命令大全,Linux的基础命令

关键词: