Vi命令课堂笔记

普通用户------->超级用户

su- root

"-":把工作环境和工作目录带入,防止因环境变量的原因

造成系统错误

若出现认证失败,解决:

sudopasswd

超级用户-------->普通用户

su- username

ctrld

exit

restartterminal

文件权限:

chmod

---- --- ---

符号权限

r可读,w可写,x可执行

+:加权限

-:取消权限

=:默认权限

sudochmod u+xw,o-x,g+w filename

八进制权限

0~7

======================================================

一、基本命令

1.Ubuntu下软件的安装

Ubuntu下支持的软件包格式:packagename.deb

浏览器搜索:packagenamefor linux

(1)图形化界面,Ubuntu软件安装中心,搜索安装

(2)命令行安装:apt-get

update:保证用户的软件包是最新的,安装软件之前建议

先更新软件包

upgradepackagename:更新已安装的软件包

installpackagename:安装软件

removepackagename:卸载软件包

autoremove

clean

autoclean

(3)dpkg用来安装下载的packagename.deb软件

sudodpkg -i packagename.deb

(4)安装软件可能碰到问题解决

安装之前更新源:

sudoapt-get update

安装软件:

sudoapt-get install packagename

或者

sudodpkg -i /路径/packagename.deb

要确定有*.deb格式的安装包,并且路径要正确!

情况一:

若软件不能正常安装,执行下列语句,重新设置安装环境

sudoapt-get -f install

然后再次执行安装命令

情况二:

无法获得.....,/var/***/被占用

执行:ps -aux

找到所有含有apt-get的进程,使用kill命令杀死

kill-9 PID

PID:进程号

然后再次执行安装命令

其他情况:

百度,谷歌,搜狗,360

pstree:进程按树状列出来

2.磁盘管理相关命令

只做了解

free

df

du

3.打包压缩命令

tar-czvf filename.tar.gz待压缩的文件列表

tar-xzvf待解压缩的文件

-z:调用gzip压缩

-j:调用bzip2压缩

4.用户管理

useradd增加用户,使用时配合-m选项,创建宿主目录

passwd修改密码

userdel删除用户,配合-r选项,将用户宿主目录删除

二、vi的使用

1.基本介绍

一款编辑器,基于命令操作的一款编辑器

三种模式:

命令模式、输入模式、末行模式

2.vi的安装

(1)sudoapt-get install vim

检查是否安装vim:

使用vi打开一个文件,按上下左右键,若出现A,B,C,D字符

样式,则说明未安装

vifilename

(2)vi的配置文件

查找vi的配置文件:

家目录下,使用:ls -a

终端下输入:vi.vimrc

将以下输入并保存退出

setmouse=a

setnu

syntaxon

setautoindent

setsmartindent

settabstop=4

setsofttabstop=4

setsmarttab

setshiftwidth=4

setshowmatch

setmatchtime=1

(3)vi不能正常使用

在家目录下:

若vi不能正常使用,则ls -a查看家目录下时候有

.vimrc配置文件,若无则重新创建,无法创建时,

ls-a把./vimrc/更名,然后创建.vimrc

3.三种模式简介

(1)命令模式

用vim打开一个文件,默认的就是命令模式

此模式下,所输入的命令,不回显,即在屏幕上,看不到用户

所输入的命令!

在输入模式下,回到命令模式,按下esc键即可

(2)输入模式

此模式下,可以进行文件的编辑。

进入输入模式:在命令模式下输入

i,o,O,a,

退出输入模式:esc----->命令模式

(3)末行模式

在命令模式下,输入冒号,屏幕左下角会出现:,此时即进入

末行模式.

4.输入模式

vim是vi的增强版,两者命令兼容

打开一个文件:vifilename

(1)进入编辑模式

i:在当前光标之前插入正文

a:在当前光标之后插入正文

o:在光标所在行的下一行插入正文

O:在光标所在行的上一行插入正文

s:替换光标之前的字符

(2)文本输入

5.命令模式

(1)文本的快捷操作

行复制

yy:复制光标所在行的内容到内存缓冲区

nyy:从光标所在行开始复制n行,n是个整数

粘贴

p(小写):粘贴至光标所在行的下一行

P(大写):粘贴至光标所在行的上一行

(2)字符复制

按v进入可视模式

v:逐个字符复制,可从某一行的任意位置开始复制

V:按行复制,

选中要复制的正文后,按y键进行复制,p键粘贴

(3)删除和撤销

dd:整行删除(光标所在行)

ndd:删除从光标所在行开始的n行

dw:删除光标之后的一个字

ndw:删除光标之后的n个字

db:删除光标之前的一个字

ndb:......

x:删除光标所在位置的一个字符

nx:删除光标所在位置及其后的n个字符

撤销:u

重复:.

(4)替换

rc:用字符c代替当前字符

nrc:用n个字符c代替光标之后的n个字符

注意: c可以是小写字母,大写字母,数字,标点符号等

(5)行间快速跳转

H:跳转到当前屏幕的最上方

nH:

M:跳转到屏幕中间位置

L:跳转到当前屏幕的最下方

nL:

gg:快速跳转到第一行

G:快速跳转到最后一行

6.末行模式

(1)按esc键,输入冒号(:)进入末行模式

快速跳转:

:n跳转到指定行

(2)保存和退出

:q退出

:q!强制退出

:w保存

:w!强制保存

:wq保存退出

:wq!强制保存退出

:qa全部退出(多文件编辑时)

:wa全部保存

:wqa全部保存退出

(3)末行模式下的文件快捷操作

:nwfile将第n行写入file文件

:a,bwfile将文件a到b行写入file文件

:1,.wfile将第一行到当前行写入file文件

:ffile文件重命名

:f打印文件的基本信息

(4)字符串(string)搜索

/string

正向搜索,跳转到该string第一次出现的位置,

按字母n,跳转到该string下一次出现的位置

搜索完之后,会再次从文件头开始搜索

?string

反向搜索,同上

(5)多文件编辑

vifile file1 file2 file3 ...

分屏查看/编辑

横屏分屏编辑多文件

vi-o file.doc file1.doc ...

竖屏分屏编辑多文件

vi-O file.doc file1.doc ...

:vsfile竖屏分屏打开file文件

:spfile横屏分屏打开file文件

(6)文件加密

vi-x filename

按提示,自己输入密码。

三、Shell脚本

1.简介

系统操作,文件管理

优点:

快速开发,无需编译,实时修改......

缺点:

运行效率低,支持数据类型少......

2.简单的Shell程序

echo"hello, world!"

程序解析:

echo即输出双引号里面的内容

输出完毕后自动换行

3.常量

数字常量:1 2 3 45

字符常量:a b c de

字符串常量:"hello" "world"

4.简单的变量使用

(1)引入

num=3

echo$num

变量的赋值:

变量名=值

注意:变量在赋值时,等号两边不能有空格。

$:引用变量的值

echo:输出变量的值

(2)变量名

变量名可以由字母,数字,下划线组成,通常用大写字母

表示,便于区分。

硬性规定:

变量名不能以数字0~9开头。

不建议使用汉语拼音,查词典或翻译软件

(3)变量的使用

变量在使用的时候无需指定数据类型,shell是一个动态

决定数据类型的语言。

变量在引用的时候,形式为:$变量名

为了区分变量:在引用时尽量使用下列形式:

${变量名}或者"$变量名"

(4)变量的赋值

变量在使用时直接赋值,即“变量名=值”。等号两侧无空格!!

Shell里面,变量的赋值均以字符串的形式进行值,

若赋值时,有空格,要用""括起来!!!

(5)若变量在使用时未定义,则它的值为空

(6)echo"${NUM},${NUM1}"

echo打印""里面的内容

5.Shell脚本程序的末尾没有分号!!!

6.基本数据类型

整型:%d

字符型:%c

字符串:%s

浮点型:%f

注意:

所有的数据类型均可以用字符串类型打印,即对应%s

但是字符串类型数据,不能以整型形式打印

7.printf使用

printf"${NUM},${NUM1}\n"

(1)printf不能自动换行

(2)按一定格式输出""里面的内容

(3)使用printf空格问题,

printf"%d,%d\n" $NUM $NUM1

(4)%m.nf

m:输出的总位数

n:小数点后保留的位数

若小数部分+小数点+整数部分

右对齐方式输出

(5)%-m.nf

左对齐方式输出,同上。

8.注释

注释一行:

#..................

9.字符串

(1)字符串的使用

string=hello

string1=world

string2="hello,Shell"

echo${string}

echo${string1}

echo${string2}

(2)字符串的拼接

(3)字符串的分割

总结刚开始没感觉什么现在突然感觉学习量大了很多,自己要花费更多的时间预习和复习,唯有这样,才能不落下,在坚持一下........

你可能感兴趣的:(Vi命令课堂笔记)