Linux(Ubuntu)基础
Linux命令
shell :可以输入终端命令的窗口,是一个软件(ubuntu默认的是dash)
win 使用的是bash
ctrl + c 终止
指定用户登录shell,改成dash后在xshell中使用更方便
(sudo) usermod -s /bin/bash 用户名 //exit一下
cat /etc/passwd //用户最后查看所使用的shell
ls(英文全拼:list files): 列出目录及文件名
-
-a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
-
-d :仅列出目录本身,而不是列出目录内的文件数据(常用)
-
-l :长数据串列出,包含文件的属性与权限等等数据;(常用)
-
-h:换算文件大小
cd(英文全拼:change directory):切换目录
-
cd是Change Directory的缩写,这是用来变换工作目录的命令。
-
… 返回上一级
-
~ 回到 家目录
语法:
cd [相对路径或绝对路径]
pwd(英文全拼:print work directory):显示目前的目录
- -P:显示出确实的路径,而非使用链接 (link) 路径。
mkdir(英文全拼:make directory):创建一个新的目录
- -m :配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色~
- -p :帮助你直接将所需要的目录(包含上一级目录)递归创建起来!
rmdir(英文全拼:remove directory):删除一个空的目录
- -p:从该目录起,一次删除多级空目录
cp(英文全拼:copy file): 复制文件或目录
- **-a:**相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
- **-d:**若来源档为链接档的属性(link file),则复制链接档属性而非文件本身;
- **-f:**为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
- **-i:**若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
- **-l:**进行硬式链接(hard link)的链接档创建,而非复制文件本身;
- **-p:**连同文件的属性一起复制过去,而非使用默认属性(备份常用);
- **-r:**递归持续复制,用於目录的复制行为;(常用)
- **-s:**复制成为符号链接档 (symbolic link),亦即『捷径』文件;
- **-u:**若 destination 比 source 旧才升级 destination !
rm(英文全拼:remove): 删除文件或目录
- -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
- -i :互动模式,在删除前会询问使用者是否动作
- -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称
- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
- -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
文件和目录命令
cat : 由第一行开始显示文件内容
- -b :列出行号,仅针对非空白行做行号显示,空白行不标行号!
- -n :列印出行号,连同空白行也会有行号,与 -b 的选项不同;
- -E :将结尾的断行字节 $ 显示出来;
- -v :列出一些看不出来的特殊字符
more : 一页一页翻动
- 空白键 (space):代表向下翻一页;
- Enter :代表向下翻『一行』;
- /字串 :代表在这个显示的内容当中,向下搜寻『字串』这个关键字;
- :f :立刻显示出档名以及目前显示的行数;
- q :代表立刻离开 more ,不再显示该文件内容。
- b 或 [ctrl]-b :代表往回翻页,不过这动作只对文件有用,对管线无用。
head/tail : 取出文件前面几行
- -n :后面接数字,代表显示几行的意思,默认的情况中,显示前面 10 行!若要显示前 20 行,就得要 -n 20
grep : 命令用于查找文件里符合条件的字符串
echo和重定向
echo会在终端中显示指定的文字,通常会和重定向联合使用
tree :树形表示目录
tree >> test.txt 把树形图输出在test.txt文件里
| :管道
远程管理命令
Linux 一般作为服务器使用,而服务器一般放在机房,你不可能在机房操作你的 Linux 服务器。
Linux 系统中是通过 ssh 服务实现的远程登录功能,默认 ssh 服务端口号为 22。
SSH 为 Secure Shell 的缩写,SSH 为建立在应用层和传输层基础上的安全协议。
关机重启:shutdown 选项 时间
其中不指定选项默认就是关机,-r则为重启;不指定时间默认一分钟,时间可以直接指定关机时间 now (立刻)或者 +分钟数来指定几分钟后关机。
查看或配置网卡信息:ifconfig
检测与目标ip地址的连接是否正常:ping 目标IP地址,检测本机连接是否正常
ping 回环地址
ping命令执行时间越短说明网速越快,执行ping命令时可以按ctrl+C就可以终止
SSH安装
1.SSH分为客户端 openssh-client 和服务器 openssh-server,可以利用以下命令确认电脑上是否安装了客户端和服务器。
dpkg -l | grep ssh
如果只是想远程登陆别的机器只需要安装客户端(Ubuntu默认安装了客户端),如果要开放本机的SSH服务就需要安装服务器。
sudo apt-get install openssh-client
sudo apt-get install openssh-server
2.启动服务器的SSH服务
首先确认ssh-server是否已经启动了
ps -e | grep ssh
如图,sshd 表示ssh-server已经启动了。如果没有启动,可以使用如下命令启动:
sudo /etc/init.d/ssh start
3.停止和重启ssh服务的命令如下:
sudo /etc/init.d/ssh stop #server停止ssh服务
sudo /etc/init.d/ssh restart #server重启ssh服务
SCP
D:\java_practice>scp -P 22 zheng@192.168.74.131:Desktop/demo.txt .
//把Desktop下的demo.txt复制到本机D:\java_practice下 (. 即本文件夹下)
ubuntu下ftp安装和使用(vsftpd)_嘻嘻作者哈哈的博客-CSDN博客
//安装vsftpd(very secure FTP daemon)服务器:非常安全的FTP守护进程,顾名思义提高了ftp协议传输数据的安全性。
sudo apt install vsftpd
SSH传输数据
1.优点:数据传输是加密的,可以防止信息泄露;数据传输是压缩的,可以提高传输速度。
2.默认端口:22(PS:其他常见端口 web:80,HTTPS:443,FTP:21)
3.连接命令: ssh -p 端口号 账户名@ip地址
4.windows下SSH客户端下载:Putty http://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
XShell http://xshellcn.com
SSH高级
1.SSH文件都存在用户目录下的.SSH文件夹中
2.SSH免密登录工作原理:公钥 id_rsa.pub 私钥 id_rsa
本地使用私钥对数据进行加密/解密
服务器使用公钥对数据进行加密/解密
使用公钥进行加密的数据需要使用私钥解密,反之亦然
3.SSH的 免密登录和设置别名 会最简化操作,只需要在操作时配置一次即可,不用死记硬背,用的时候查一下即可
用户权限
Linux下有两种用户:超级用户(root)、普通用户。
超级用户:可以再linux系统下做任何事情,不受限制
普通用户:在linux下做有限的事情。
1.文件类型
d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件
2.基本权限
i.读(r/4):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
ii.写(w/2):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
iii.执行(x/1):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
iv.“—”表示不具有该项权限
3.chmod
- 功能:设置文件的访问权限
格式:chmod [参数] 权限 文件名 /chmod 755 文件名/chmod u + x 文件名 - R -> 递归修改目录文件的权限,只有文件的拥有者和root才可以改变文件的权限
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限用户符号:u:拥有者 g:拥有者同组用 o:其它用户 a:所有用户 - rwx 421 rw- 6 r-x 5
4.chown
功能:修改文件的拥有者
格式: chown [参数] 用户名 文件名
5.chgrp
功能:修改文件或目录的所属组
格式: chgrp [参数] 用户组名 文件名
常用选项: -R 递归修改文件或目录的所属组
用户(组)管理
id/who/whoami
id命令的作用是:查询有效用户的用户id、组id信息。
who命令的作用是:查询当前正在登陆的用户信息。
whoami命令和who命令是一样的,相当于who -m命令。
只不过who am i 命令展示的是当前终端(我当前是远程登录终端)的用户信息,而who是展示的所有终端(包括远程终端和虚拟机的终端)的用户信息。
useradd/groupadd
添加新的用户账号使用useradd命令,其语法如下:
useradd 选项 用户名
- -G 默认使用useradd添加的用户是没有权限使用sudo以root身份执行命令的,可以使用该选项将用户添加到sudo附加组中
- -d 目录指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
- -g 用户组 指定用户所属的用户组。
groupadd 选项 用户组
# groupadd -g 101 group2//此命令向系统中增加了一个新组group2,同时指定新组的组标识号是101
userdel/groupdel
删除一个已有的用户账号使用userdel
命令,其格式如下:
- -f:强制删除用户,即使用户当前已登录;
- -r 删除用户登入目录以及目录中所有文件。
userdel [-r][用户帐号]
groupdel 用户组
- -g 修改用户的主组(passwd中的GID)。
- -G 修改用户的附加组。提示:设置了用户的附加组后,需要重新登陆才能生效
cat -n /etc/group | grep 组名 /cat -n /etc/passwd |grep 用户名 // 查看是否修改成功
- -o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
- -n新用户组 将用户组的名字改为新名字
# groupmod –g 10000 -n group3 group2 //此命令将组group2的标识号改为10000,组名修改为group3。
usermod/usermod
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
修改已有用户的信息使用usermod
命令,其格式如下:
usermod 选项 用户名
groupmod 选项 用户组
- -G 默认使用useradd添加的用户是没有权限使用sudo以root身份执行命令的,可以使用该选项将用户添加到sudo附加组中
usermod -G sudo 用户名
passwd
用来更改使用者的密码。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:
passwd 选项 用户名
which
用于查找文件,可以查看执行命令所在位置,which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
- -n<文件名长度> 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
- -p<文件名长度> 与-n参数相同,但此处的<文件名长度>包括了文件的路径。
- -w 指定输出时栏位的宽度。
- -V 显示版本信息。
/etc/passwd 是用于保存用户信息的文件
/user/bin/passw 是用于修改用户密码的程序
/bin,/sbin,/usr/sbin,/usr/bin 目录
/bin是系统的一些指令。bin为binary的简写,是二进制执行文件目录,主要用于具体应用。主要放置一些系统的必备执行文件,例如:cat、cp、chmod df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。
/sbin一般是指超级用户指令。是系统管理员专用的二进制代码存放目录,主要用于系统管理。主要放置一些系统管理的必备程序,例如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、 ifdown、init、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、 runlevel、shutdown等。
/usr/bin 是你在后期安装的一些软件(的运行脚本)。主要放置一些应用软体工具的必备执行档例如c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*、 gzip、htpasswd、kfm、ktop、last、less、locale、m4、make、man、mcopy、ncftp、 newaliases、nslookup passwd、quota、smb*、wget等。
/usr/sbin 放置超级用户的一些管理程序,用户安装的系统管理的必备程序,主要放置应用程序工具的必备执行文件,例如:dhcpd、httpd、imap、in.*d、inetd、lpd、named、netconfig、nmbd、samba、sendmail、squid、swap、tcpd、tcpdump等。
如果新装的系统,运行一些很正常的诸如:shutdown,fdisk的命令时,悍然提示:bash:command not found。那么
首先就要考虑root 的
P
A
T
H
里是否已经包含了这些环境变量。可以查看
P
A
T
H
,如果是:
P
A
T
H
=
PATH里是否已经包含了这些环境变量。 可以查看PATH,如果是:PATH=
PATH里是否已经包含了这些环境变量。可以查看PATH,如果是:PATH=PATH:
H
O
M
E
/
b
i
n
则需要添加成如下:
P
A
T
H
=
HOME/bin则需要添加成如下: PATH=
HOME/bin则需要添加成如下:PATH=PATH:$HOME/bin:/sbin:/usr/bin:/usr/sbin
su /exit
su [ - ]用户名 切换用户并切换目录( - 可以切换到用户家目录,否则位置不变)
su 不接用户名,可以切换到root,不推荐使用,不安全。
exit 退出当前登陆账户
系统信息相关命令
时间和日期 date/cal
1.1 date 时间
第一步: 显示当前时间
# 显示时间
date
# 按照指定格式显示时间
date +"%Y‐%m‐%d %H:%M:%S"
1234
第二步: 设置系统时间
date ‐s "时间字符串"
1.2 cal 日历(calendar)
磁盘和目录空间 df/du
进程信息 ps/top/kill
ps
参数说明(默认只会显示当前用户通过终端启动的应用程序)(不加 - )
提示: 使用
kill
命令时, 最好只终止由当前用户开启的进程, 而不要终止root
身份开启的进程, 否则可 能导致系统崩溃PID 是 进程代号
- 要退出
top
可以直接输入q
其他命令
查找文件 find
find
命令功能非常强大,通常用来在 特定的目录下 搜索 符合条件的文件
序号 | 命令 | 作用 |
---|---|---|
01 | find [路径] -name “*.py” | 查找指定路径下扩展名是 .py 的文件,包括子目录(* py *) |
- 如果省略路径,表示在当前文件夹下查找
- 之前学习的通配符,在使用
find
命令时同时可用
软链接 ln
序号 | 命令 | 作用 |
---|---|---|
01 | ln -s 被链接的源文件 链接文件 | 建立文件的软链接,用通俗的方式讲类似于 Windows 下的快捷方式 |
-
没有
-s
选项建立的是一个 硬链接文件- 两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
-
源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用
-
在 Linux 中,文件名 和 文件的数据 是分开存储的
-
提示:
- 在 Linux 中,只有文件的
硬链接数 == 0
才会被删除 - 使用
ls -l
可以查看一个文件的硬链接的数量 - 在日常工作中,几乎不会建立文件的硬链接,知道即可
- 在 Linux 中,只有文件的
打包/解包 tar
-
打包压缩 是日常工作中备份文件的一种方式
-
在不同操作系统中,常用的打包压缩方式是不同的
Windows
常用rar
Mac
常用zip
Linux
常用tar.gz
-
tar
是 Linux 中最常用的 备份工具,此命令可以 把一系列文件 打包到 一个大文件中,也可以把一个 打包的大文件恢复成一系列文件 -
tar 的命令格式如下: # 打包文件 tar -cvf 打包文件.tar 被打包的文件/路径... # 解包文件 tar -xvf 打包文件.tar
-
tar选项 含义 c 生成档案文件,创建打包文件 x 解开档案文件 v 列出归档解档的详细过程,显示进度 f 指定档案文件名称,f 后面一定是 .tar 文件,所以必须放选项最后
注意:f
选项必须放在最后,其他选项顺序可以随意
压缩/解压缩 gzip/bzip2
- tar 与 gzip 命令结合可以使用实现文件 打包和压缩
tar
只负责打包文件,但不压缩- 用
gzip
压缩tar
打包后的文件,其扩展名一般用xxx.tar.gz
在
Linux
中,最常见的压缩文件格式就是xxx.tar.gz
-
命令格式如下: # 压缩文件 tar -zcvf 打包文件.tar.gz 被压缩的文件/路径... # 解压缩文件 tar -zxvf 打包文件.tar.gz # 解压缩到指定路径 tar -zxvf 打包文件.tar.gz -C 目标路径
-
选项 含义 -C 解压缩到指定目录,注意:要解压缩的目录必须存在,gzip和bzip2都适用 -
tar
与bzip2
命令结合可以使用实现文件 打包和压缩(用法和gzip
一样) -
tar
只负责打包文件,但不压缩, -
用
bzip2
压缩tar
打包后的文件,其扩展名一般用xxx.tar.bz2
-
在
tar
命令中有一个选项 -j 可以调用bzip2
,从而可以方便的实现压缩和解压缩的功能 -
# 压缩文件 tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径... # 解压缩文件 tar -jxvf 打包文件.tar.bz2
软件安装 apt-get
-
apt 是
Advanced Packaging Tool
,是 Linux 下的一款安装包管理工具 -
可以在终端中方便的 安装/卸载/更新软件包
-
# 1. 安装软件 $ sudo apt install 软件包 # 2. 卸载软件 $ sudo apt remove 软件名 # 3. 更新已安装的包 $ sudo apt upgrade
-
如果希望在
ubuntu
中安装软件,更加快速,可以通过设置镜像源,选择一个访问网速更快的服务器,来提供软件下载/安装服务 -
提示:更换服务器之后,需要一个相对比较长时间的更新过程,需要耐心等待。更新完成后,再安装软件都会从新设置的服务器下载软件了
-
所谓镜像源,就是所有服务器的内容是相同的(镜像),但是根据所在位置不同,国内服务器通常速度会更快一些! #系统设置——软件和设置——选择下载服务器
vim命令
vi的基本概念
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:
1) 命令行模式command mode)
控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。
2) 插入模式(Insert mode)
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
3) 底行模式(last line mode)
将文件保存(w)或退出(q)vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。
vi的基本操作
进入vi
在系统提示符号输入vi及文件名称后,进入vi之后,是处于「命令行模式(command mode)」,
-
打开文件并且定位到指定行
vi 文件名 +[行数]
-
在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」
-
切换到「插入模式(Insert mode)」才能够输入文字
-
在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」
: w filename (输入 「w filename」将文章以指定的文件名filename保存)
: wq (输入「wq」,存盘并退出vi)
: q! (输入q!, 不存盘强制退出vi)
-
如果vi异常退出,在磁盘上可能会保存有交换文件
-
下次再使用vi编辑该文件时,可以看到底部绿色字体信息,按下字母 d删除交换信息 即可
移动
1) 上、下、左、右
命令 | 功能 | 手指 |
---|---|---|
h | 向左 | 食指 |
j | 向下 | 食指 |
k | 向上 | 中指 |
l | 向右 | 无名指 |
2)行内移动
命令 | 英文 | 功能 |
---|---|---|
w | word | 向后移动一个单词 |
b | back | 向前移动一个单词 |
0 | 行首 | |
^ | 行首,第一个不是空白字符的位置 | |
$ | 行尾 |
3)行数移动
命令 | 英文 | 功能 |
---|---|---|
gg | go | 文件顶部 |
G | go | 文件末尾 |
数字gg | go | 移动到 数字 对应行数 |
数字G | go | 移动到 数字 对应行数 |
:数字 | 移动到 数字 对应行数 |
4)屏幕移动
命令 | 英文 | 功能 |
---|---|---|
Ctrl + b | back | 向上翻页 |
Ctrl + f | forward | 向下翻页 |
H | Head | 屏幕顶部 |
M | Middle | 屏幕中间 |
L | Low | 屏幕底部 |
移动(程序员)
1)段落移动
命令 | 功能 |
---|---|
{ | 上一段 |
} | 下一段 |
2)括号切换
命令 | 功能 |
---|---|
% | 括号匹配及切换 |
3)标记
命令 | 英文 | 功能 |
---|---|---|
mx | mark | 添加标记 x,x 是 a~z 或者 A~Z 之间的任意一个字母 |
‘x | 直接定位到标记 x 所在位置 |
选中文本(可视模式)
命令 | 模式 | 功能 |
---|---|---|
v | 可视模式 | 从光标位置开始按照正常模式选择文本 |
V | 可视行模式 | 选中光标经过的完整行 |
Ctrl + v | 可视块模式 | 垂直方向选中文本 |
撤销和恢复撤销
命令 | 英文 | 功能 |
---|---|---|
u | undo | 撤销上次命令 |
CTRL + r | redo | 恢复撤销的命令 |
删除文本
命令 | 英文 | 功能 |
---|---|---|
x | cut | 删除光标所在字符,或者选中文字 |
d(移动命令) | delete | 删除移动命令对应的内容 |
dd | delete | 删除光标所在行,可以 ndd 删除多行 |
D | delete | 删除至行尾 |
- 删除命令可以和 移动命令 连用,以下是常见的组合命令:
命令 | 功能 |
---|---|
dw | 从光标位置删除到单词末尾 |
d0 | 从光标位置删除到一行的起始位置 |
d} | 从光标位置删除到段落结尾 |
ndd | 从光标位置向下连续删除 n 行 |
d代码行G | 从光标所在行 删除到 指定代码行 之间的所有代码 |
复制粘贴
命令 | 英文 | 功能 |
---|---|---|
y(移动命令) | copy | 复制 |
yy | copy | 复制一行,可以 nyy 复制多行 |
p | paste | 粘贴 |
替换
命令 | 英文 | 功能 | 工作模式 |
---|---|---|---|
r | replace | 替换当前字符 | 命令模式 |
R | replace | 替换当前行光标后的字符 | 替换模式 |
缩排和重复执行
命令 | 功能 |
---|---|
> | 向右增加缩进 |
<< | 向左减少缩进 |
. | 重复上次命令 |
查找
- 常规查找
命令 | 功能 |
---|---|
/str | 查找 str |
- 单词快速匹配
命令 | 功能 |
---|---|
* | 向后查找当前光标所在单词 |
# | 向前查找当前光标所在单词 |
查找并替换
进入编辑模式的六个命令
- i:在当前字符前插入。
- I:在光标所在行的行首插入。
- a:在当前字符后插入。
- A:在光标所在行的行尾插入。
- o:在当前行的下一行插入新的一行。
- O:在当前行的上一行插入新的 一行。
编辑命令与数字连用
- 输入10,表示重复10次
- 输入 i 进入编辑模式
- 输入要重复的文字
- 按下ESC返回到命令模式,返回之后vi就会把前两步重复十次
- 提示:正常开发时,在进入编辑模式之前,不要按数字
利用可视块给多行代码增加注释
在Python中要给代码增加注释,要在代码前增加 #
- 在命令模式下,移动到要添加注释的第一行代码,按 ^ 或 0 来到行首
- 按 ctrl + v 进入可视块模式
- 使用 j 向下连续选中要添加注释的代码行
- 使用 I 进入编辑模式,并在首行插入 # 。注意:大写字母I
- 按下 ESC 返回命令模式,返回之后vi 会在之前选中的每一行代码前插入 #
分屏命令
- 属于vi 的高级命令,可以同时查看和编辑多个文件
命令 | 英文 | 功能 |
---|---|---|
:sp 文件名 | split | 横向增加分屏 |
:vsp 文件名 | vertical split | 纵向增加分屏 |
切换分屏窗口
- 分屏窗口都是基于 CTRL + w 这个快捷键的,w 对应 window
命令 | 英文 | 功能 |
---|---|---|
w | window | 切换到下一窗口 |
r | reverse | 互换窗口 |
c | close | 关闭当前窗口,但不能关闭最后一个窗口 |
q | quit | 退出当前窗口,如果是最后一个窗口,则关闭vi |
o | other | 关闭其他窗口 |
末行命令拓展
- 末行命令主要是正对文件进行操作的:保存,退出,搜索替换,另存,新建,浏览文件
命令 | 英文 | 功能 |
---|---|---|
:e. | edit | 会打开内置的文件浏览器,浏览当前目录下的文件 |
:n [文件名] | new | 新建文件 |
:w [文件名] | write | 另存为,但是仍然编辑当前文件,并不会切换文件 |
-
提示:切换文件之前,必须保证当前文件已经被保存!
-
已经学过的末行命令:
:w :q :wq :q! :X 保存并退出 :%s///gc 确认搜索并替换
-
在实际开发中,可以使用 :w 阶段性备份代码