目录
(一) 文件和目录操作命令
1. 切换目录命令:cd
cd file/file2 切换到file/file2目录下,利用Tab键补全更高效
cd .. 切换到上一级目录,(../..)可切换到上两级目录,“..”代表上一级目录
cd / 切换到系统根目录下
cd ~ 切换到当前用户的根目录,“~”表示当前使用shell用户的主文件夹;
cd - 返回到上一次的工作目录
2. 显示当前目录命令: pwd
3. 文件和目录浏览命令:ls
(1) ls -a 列出文件下所有的文件,包括以“.“开头的隐藏文件
(2) ls -l 列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等
(3) ls -F 在每一个文件的末尾加上一个字符说明该文件的类型。"@"表示符号链接、"|"表示FIFOS、"/"表示目录、"="表示套接字。
(4) ls -s 在每个文件的后面打印出文件的大小。 size(大小)
(5) ls -t 按时间进行文件的排序 Time(时间)
(6) ls -A 列出除了"."和".."以外的文件。
(7) ls -R 将目录下所有的子目录的文件都列出来,相当于我们编程中的“递归”实现
(8) ls -L 列出文件的链接名。
(9) ls -S 以文件的大小进行排序
(10) ls 列出当前目录下的可见文件和目录
(11) ll -a 列出当前目录下所有文件的详细信息
(12) ll -h 列出当前目录下文件的详细信息(其实就是文件的大小可读性更强了)
4. 目录的创建(mkdir)和删除(rmdir)命令
linux下创建目录命令:mkdir
用法:
mkdir [-p][--help][--version][-m <目录属性>][目录名称]
参数:
-m<目录属性>或--mode<目录属性> 建立目录时同时设置目录的权限。
-p或 --parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录。
--help 显示帮助。
--verbose 执行时显示详细的信息。
--version 显示版本信息。
实例:
mkdir folder1 #在当前目录下创建一个空目录
mkdir -p folder2/a/b #递归创建多个目录
mkdir -m 777 folder3 #创建权限为777的目录
mkdir -v folder4 #创建新目录并显示信息
rmdir folder1 删除当前目录下的删除空目录folder1
5. 文件的创建(touch)和删除(rm)命令
touch file.txt 在当前目录下创建一个file.txt的文件
rm file.txt 删除file.txt的文件(带询问的删除,需输入y才能删除)
rm -f file.txt 直接删除file.txt文件
rm -r file 递归删除,即删除file目录以及其目录下的子目录(带询问的删除)
rm -rf file 直接删除file目录以及其目录下的子目录;
参数:
-f(--force)强制删除,不提示确认
-r、-R、--recursive 递归删除目录及其内容
-i:在删除前需要确认
6. 文件移动(mv)和复制(cp)命令
mv file1.txt file 2.txt 将file1.txt重命名test.2txt
mv file1.txt folder1/ file2.txt 将test1.txt移动到当前目录下的folder1目录下并重命名为file2.txt
cp file1.txt file2.txt 复制file1.txt并粘贴到当前目录下,然后重命名为file2.txt
cp –f file1.txt folder1/ file1.txt 复制file1.txt到folder1目录下,并强制覆盖folder1下的files1.txt文件
cp [选项] src_directory/srcfile target_directory/[new_name]
选项
-b 当文件存在时,覆盖前,为其创建一个备份
-f 强制复制,覆盖前不询问
-i 覆盖前询问
-l 只创建硬链接而不复制文件
-p 保留源文件或目录的属性
-r,-R 递归复制指定目录下的所有文件与子目录
-u 若目标文件存在,且source比较新,才会更新
7. find命令:
find是个使用频率比较高的命令。常常用它在系统特定目录下,查找具有某种特征的文件。
find命令的格式:
find [-path……] -options [-print -exec -ok]
path:要查找的目录路径。
Options:常用的有下选项:
-name:按照名字查找
-perm:安装权限查找
-size :按文件大小查找
-prune:不再当前指定的目录下查找
-user:文件属主来查找
-group:文件所属组来查找
-nogroup:查找无有效所属组的文件
-nouser:查找无有效属主的文件
-type:按照文件类型查找
实例:
find -name “file1” 查找该目录的file1文件
find -name “fi*” 查找该目录的fi开头的文件
find -size +1024 ##大于1M
(二) Shell命令的使用
8. echo命令
(1) 除了touch命令,echo命令也可以用来创建文件,它可以将文本内容输入新文件,如
echo “hello world!” > local/file1.txt
1.覆盖型写法 (文件里原来的内容被覆盖)
echo 'www.baidu.com' > local/ file1.txt
2.添加型写法 (新内容添加在原来内容的后面)
echo "www.baidu.com" >> local/ file1.txt
(2) echo显示器上显示信息,一般起到一个提示的作用,脚本编程时经常用到。
(3) 我们经常用到是:echo 7 > proc/sys/kernel/printk #启动内核打印
9. cat命令
(1) cat可以用来显示指定文件的内容,若文件不存在,cat会自动创建一个新文件
cat > filename 只能创建新文件,不能编辑已有文件.
(2) cat filename 一次显示整个文件。
10. 查看历史命令history(直接按上下键可单条查看历史命令)
history N 显示最近的N条命令,例如history 5
history -d N 删除第N条命令,这个N就是前面的编号,例如history -d 990
history -c 清空命令历史
history -a 将当前会话中的命令历史写入指定文件
11. 切换用户命令
(1) 默认登录的是普通用户权限,显示$符
(2) 从普通用户切换超级用户权限:sudo su(或sudo –i、sudo -sH),输入密码,显示#符
(3) 从超级用户切换普通用户:su 用户名, 显示$符。
su为switch user,即切换用户的简写;
su是最简单的身份切换名,用su我们能够进行不论什么用户的切换,一般都是su - username,然后输入password就ok了。su申请切换root用户,需要申请root用户密码。有些Linux发行版,例如ubuntu,默认没有设置root用户的密码,所以需要我们先使用sudo passwd root设置root用户密码。
sudo(super user do)
sudo su是当前用户暂时申请root权限,所以输入的不是root用户密码,而是当前用户的密码。sudo是用户申请管理员权限执行一个操作,而此处的操作就是变成管理员。
12. which命令
which命令的作用是在PATH变量指定的路径中搜索某个系统命令的位置并且返回第一个搜索结果。也就是说使用which命令就可以看到某个系统命令是否存在以及执行的到底是哪一个位置的命令。如果你想知道你的命令放在那里了那么可以用which去查找一下。
语法:
which 可执行文件名称
参数:
-n 指定文件名长度指定的长度必须大于或等于所有文件中最长的文件名。
-p 与-n参数相同但此处的包括了文件的路径。
-a 将PATH目录中可以找到指令均列出不止第一个而已。
-w 指定输出时栏位的宽度。
-V 显示版本信息
(三) 修改访问权限命令chmod
Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功。Linux下文件的权限类型一般包括读,写,执行。对应字母为 r、w、x。访问文件的用户有三种类型,即文件所有者、组成员用户和普通用户,他们有各自的文件访问方式。
Linux上通常使用chmod命令对文件的权限进行设置和更改。
Chmod命令的基本语法:chmod [可选项] <mode> <file>
可选项:
-c –change: 显示改变部分的执行状态
-f:不显示错误信息
-x 表示可执行权限
-R:以递归的方式对目前目录下的所有档案与子目录进行相同的权限变更
--help 显示此帮助信息
--version 显示版本信息
<mode>格式如下 :
[ugoa...][[+-=][rwxX]...][,...]
u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。
范例1 : chmod ugo+r file1.txt #将档案 file1.txt 设为所有人皆可读取
范例4 : chmod a+r file1.txt #将档案 file1.txt 设为所有人皆可读取
范例3 : chmod ug+w,o-w file1.txt file2.txt #file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入
范例4 : chmod u+x ex1.py #将 ex1.py 设定为只有该档案拥有者可以执行
范例5: chmod -R a+r * 将目前目录下的所有档案与子目录皆设为任何人可读取
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例6: chmod a=rwx file 和 chmod 777 file #效果相同
范例7:chmod ug=rwx,o=x file 和 chmod 771 file #效果相同
(四) 帮助命令
13. 帮助命令help、man、info
(1) 内建命令与外部命令
内建命令实际上是 shell 程序的一部分,是一些比较简单的 Linux 系统命令,比如:history、cd、exit 等等。
外部命令是 Linux 系统中的实用程序部分,因为实用程序的功能通常都比较强大,虽然其不包含在 shell 中,但是其命令执行过程是由 shell 程序控制的。外部命令是在 Bash 之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin等等。比如:ls、vi等。
(2) 帮助命令
1、help命令
help xxx 只能用于内部命令,不能用于外部命令
xxx --help 用于外部命令
2、man命令 eg: man ls
得到的内容比用 help 更多更详细,而且 man 没有内建与外部命令的区分,因为 man 工具是显示系统手册页中的内容,也就是一本电子版的字典,这些内容大多数都是对命令的解释信息,还有一些相关的描述。通过查看系统文档中的 man 也可以得到程序的更多相关信息和 Linux 的更多特性。
3、info命令 eg: info ls
得到的信息比 man 还要多,info 来自自由软件基金会的 GNU 项目,是 GNU 的超文本帮助系统,能够更完整的显示出 GNU 信息。所以得到的信息当然更多
参考:https://www.cnblogs.com/kumata/p/8993914.html
(五) 解压缩命令
14. 压缩命令
(1)zip [选项] 压缩包名 源文件或源目录列表
选项 含义
-r 递归压缩目录,及将制定目录下的所有文件以及子目录全部压缩。
-m 将文件压缩之后,删除原始文件,相当于把文件移到压缩文件中。
-v 显示详细的压缩过程信息。
-q 在压缩的时候不显示命令的执行过程。
- 压缩级别是从 1~9 的数字,-1 代表压缩速度更快,-9 代表压缩效果更好。
-u 更新压缩文件,即往压缩文件中添加新文件。
(2)tar在linux上是常用的打包、压缩、加压缩工具,常用的压缩与解压缩参数
-c :create 建立压缩档案的参数;
-x :解压缩压缩档案的参数;
-z :是否需要用gzip压缩;
-v: 压缩的过程中显示档案;
-f: 置顶文档名,在f后面立即接文件名,不能再加参数
压缩:tar -czvf 压缩.tar.gz 未压缩
(六) 用户管理命令
(1) 创建新用户命令adduser eg: sudo adduser name1
(2) 永久性删除用户(组)账号:userdel name1(groupdel name1);
(3) who 命令显示关于当前在本地系统上的所有用户的信息。显示以下内容:登录名、tty、登录日期和时间。
who这个命令重点在用来查看当前有那些用户登录到了本台机器上
who -m的作用和who am i的作用是一样的
who am i显示的是实际用户的用户名,即用户登陆的时候的用户ID。此命令相当于who -m
whoami显示的是有效用户ID ,是当前操作用户的用户名
(七) 进程管理命令
15. 进程监视命令ps
ps命令最常用的还是用于监控后台进程的工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设备进行通信的,所以如果需要检测其情况,便可以使用ps命令了。 注意:ps是显示瞬间进程的状态,并不动态连续;如果想对进程进行实时监控应该用top命令。
命令语法格式如下:ps [选项]
选项:
-e 显示所有进程。
-f 全格式。
-h 不显示标题。
-l 长格式。
-w 宽输出。
a 显示终端上的所有进程,包括其他用户的进程。
r 只显示正在运行的进程。
x 显示没有控制终端的进程。
u以用户为主的进程状态
实例:
• USER:该进程属于那个使用者账号的
• PID :该进程的进程ID号。
• %CPU:该进程使用掉的 CPU 资源百分比;
• %MEM:该进程所占用的物理内存百分比;
• VSZ :该进程使用掉的虚拟内存量 (Kbytes)
• RSS :该进程占用的固定的内存量 (Kbytes)
• TTY :该进程是在那个终端机上面运作,若与终端机无关,则显示 ?,另外, tty1-tty6 是本机上面的登入者程序,若为 pts/0 等等的,则表示为由网络连接进主机的程序。
• STAT:该程序目前的状态,主要的状态有:
R :该程序目前正在运作,或者是可被运作;
S :该程序目前正在睡眠当中 (可说是 idle 状态啦!),但可被某些讯号(signal) 唤醒。
T :该程序目前正在侦测或者是停止了;
Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态
• START:该进程被触发启动的时间;
• TIME :该进程实际使用 CPU 运作的时间。
• COMMAND:该程序的实际指令
16. 动态显示进程命令top
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户 终止该程序为止. 比较准确的说,top命令提供了实时的对系统处理器的状态监视。它将显示系统中CPU最“敏感”的任务列表。该命令可以按CPU使用,内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定。
下面详细介绍它的使用方法。
命令参数:
-b 批处理
-c 显示完整的治命令
-I 忽略失效过程
-s 保密模式
-S 累积模式
-i<时间> 设置间隔时间
-u<用户名> 指定用户名
-p<进程号> 指定进程
-n<次数> 循环显示的次数
使用实例:
实例1:显示进程信息
命令:top
输出:
前五行是当前系统情况整体的统计信息区。
第一行,任务队列信息,具体参数说明情况如下:
21:19:49 — 当前系统时间
up 23 days, 18:19 — 系统已经运行的时间
3 users — 当前有3个用户登录系统
load average: 0.00, 0.01, 0.05 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。 load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
第二行,Tasks — 任务(进程),具体信息说明如下:
系统现在共有211个进程,其中处于运行中的有1个,210个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行,cpu状态信息,具体属性说明如下:
0.0%us — 用户空间占用CPU的百分比。
0.0% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
100.0% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.0% si — 软中断(Software Interrupts)占用CPU的百分比
注:默认进入top时,各进程是按照CPU的占用量来排序的
在top基本视图中,按键盘数字“1”,可监控每个逻辑CPU的状况:
(八) 磁盘管理命令
17. 磁盘挂载管理命令mount
mount可将指定设备中指定的文件系统加载到 Linux目录下,从而将分区和该目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了。
格式:mount [-参数] [设备名称] [挂载点]
其中常用的参数有:
-a 安装在/etc/fstab文件中类出的所有文件系统。
-f 伪装mount,作出检查设备和目录的样子,但并不真正挂载文件系统。
-n 不把安装记录在/etc/mtab 文件中。
-r 讲文件系统安装为只读。
-v 详细显示安装信息。
-w 将文件系统安装为可写,为命令默认情况。
-t 指定设备的文件系统类型,常见的有:
1.ext2 linux目前常用的文件系统
2.msdos MS-DOS的fat,就是fat16
3.vfat windows98常用的fat32
4.nfs 网络文件系统
5.iso9660 CD-ROM光盘标准文件系统
6.ntfs windows NT/2000/XP的文件系统
7.auto 自动检测文件系统
-o 指定挂载文件系统时的选项,有些也可写到在/etc/fstab中。常用的有:
defaults 使用所有选项的默认值(auto、nouser、rw、suid)
auto/noauto 允许/不允许以 –a选项进行安装
dev/nodev 对/不对文件系统上的特殊设备进行解释
exec/noexec 允许/不允许执行二进制代码
suid/nosuid 确认/不确认suid和sgid位
user /nouser 允许/不允许一般用户挂载
codepage=XXX 代码页
iocharset=XXX 字符集
ro 以只读方式挂载
rw 以读写方式挂载
remount 重新安装已经安装了的文件系统
loop 挂载回旋设备
实例:
挂载windows下文件系统为FAT32的D盘,一般而言在Linux下这个分区对应/dev/hda5,根据具体的分区情况会有不同,这里就以hda5来举例说明:
mkdir /mnt/hda5 #创建hda5的目录作为挂载点,位置和目录名可自定义
mount -t vfat /dev/hda5 /mnt/hda5
18. 转换磁盘数据命令dd
dd是Linux/UNIX下的一个非常有用的命令,作用是用指定大小的块,拷贝一个文件,并在拷贝的同时进行指定的转换。
dd与cp命令的区别:
dd是对块进行操作的,cp是对文件操作的
dd更低级一些;另外,dd的最明显的作用是:dd可以创建一个固定大小的文件。
dd if=/dev/zero of=myfile bs=4 count=1024 这样可以创建大小为1024*4的文件,并且此文件的大小无法改变。
参数:
if=文件名:输入文件名,即指定源文件:<if=inputfile>
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。
obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。
bs=bytes:同时设置读入/输出的块大小为bytes个字节。
cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
skip=blocks:从输入文件开头跳过blocks个块后再开始复制。
seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。
block:把每一行转换为长度为cbs,不足部分用空格填充
unblock:使每一行的长度都为cbs,不足部分用空格填充
swab:交换输入的每对字节
noerror:出错时不停止
notrunc:不截短输出文件
sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。
conv=conversion:用指定的参数转换文件。
ascii:转换ebcdic为ascii
ebcdic:转换ascii为ebcdic
ibm:转换ascii为alternateebcdic
lcase:把大写字符转换为小写字符
ucase:把小写字符转换为大写字符
实例:
简单实例:
dd if=/dev/hdb of=/dev/hdd #将本地的/dev/hdb整盘备份到/dev/hdd
dd if=/dev/hdb of=/root/image #将/dev/hdb全盘数据备份到指定路径的image文件
dd if=/root/image of=/dev/had #恢复
dd if=/root/image of=/dev/hdb #将备份文件恢复到指定盘
dd if=/dev/hdb | gzip > /root/image.gz #备份/dev/hdb全盘数据,并利用gzip进行压缩,保存到指定路径
gzip -dc /root/image.gz | dd of=/dev/hdb #将压缩的备份文件恢复到指定盘
dd if=/dev/hda of=/root/image count=1 bs=512 #备份磁盘开始的512个字节大小的MBR信息到指定文件
注:count=1指仅拷贝一个块;bs=512指块大小为512个字节。
dd if=/dev/mem of=/root/mem.bin bs=1024 #拷贝内存内容到硬盘,(指定块大小为1k)
dd if=/dev/cdrom(hdc) of=/root/cd.iso #拷贝光盘内容到指定文件夹,并保存为cd.iso文件
dd if=/dev/urandom of=/dev/hda1 #11.销毁磁盘数据
注:利用随机的数据填充硬盘,在某些必要的场合可以用来销毁数据。
复杂实例:
1.增加swap分区文件大小
第一步:创建一个大小为256M的文件:
dd if=/dev/zero of=/swapfile bs=1024 count=262144
第二步:把这个文件变成swap文件:
mkswap /swapfile
第三步:启用这个swap文件:
swapon /swapfile
第四步:编辑/etc/fstab文件,使在每次开机时自动加载swap文件:
/swapfile swap swap defaults 0 0
2.测试硬盘的读写速度
dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
dd if=/root/1Gb.file bs=64k | dd of=/dev/null
通过以上两个命令输出的命令执行时间,可以计算出硬盘的读、写速度。
3.确定硬盘的最佳块大小:
dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file
dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file
dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file
dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file
通过比较以上命令输出中所显示的命令执行时间,即可确定系统最佳的块大小。
4.修复硬盘
dd if=/dev/sda of=/dev/sda
当硬盘较长时间(比如1,2年)放置不使用后,磁盘上会产生magnetic fluxpoint。当磁头读到这些区域时会遇到困难,并可能导致I/O错误。当这种情况影响到硬盘的第一个扇区时,可能导致硬盘报废。上边的命令有可能使这些数据起死回生。且这个过程是安全,高效的。
5.dd命令做usb启动盘
dd if=xxx.iso of=/dev/sdb bs=1M
root用户或者sudo,用以上命令前必须卸载u盘,sdb是你的u盘,bs=1M是块的大小,后面的数值大,写的速度相对块一点,但也不是无限的,我一般选2M,注意,执行命令后很块完成,但u盘还在闪,等不闪了,安全移除。
19. 磁盘空间占用情况命令dd
df命令:检查文件系统的磁盘空间占用情况。
格式:df [选项]
说明:df命令可显示所有文件系统对I节点和磁盘块的使用情况。
选项的含义:
df -a:显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统。
df -h:以容易理解的格式输出文件系统大小,例如124KB、345MB、46GB。
df -i:显示i节点信息,而不是磁盘块。
df -t:显示各指定类型的文件系统的磁盘空间使用情况。
df -x:列出不是某一指定类型文件系统的磁盘空间使用情况。
df -T:显示文件系统类型。
df 以512字节为单位
df –k 以1024字节为单位.
(九) 软件包管理命令
(1) sudo apt-get 命令是Ubuntu系统中管理软件包使用次数最多的命令之一,它能完成软件包的下载、安装、编译和卸载(sudo的作用是提升权限),常用命令如下:
sudo apt-get update #更新软件源
sudo apt-get upgrade #升级系统中所有软件包
sudo apt-get install #下载所需的软件包并进行安装
sudo apt-get remove #删除指定的软件包
(十) VIM/VI编辑器使用
vim/vi有3种基本的工作模式,即命令模式、输入模式和末行命令模式。
(1) 命令模式:可以移动光标、删除文字等;按下a键或者i键进入插入模式。
(2) 插入模式:在此模式中可以输入字符,按下ESC键退回命令模式。
(3) 底行命令模式:可以保存文件、退出VIM/VI,设置VIM/VI、查找等(:w保存当前文件;:q!不保存文件并强制退出;:wq保存文件并退出;)。
命令模式下常用指令:
h 光标左移
j 光标下移
k 光标上移
l 光标右移
ctrl + f 向下翻页(front)
strl + b 向上翻页(back)
ctrl + d 向下翻半页(down)
strl + u 向上翻半页(up)
shift + a 光标移到行尾
shift + i 光标移到行首
x 删除光标所在位置的单个字符
dd 删除光标所在行
o 在光标所在行的下方插入一行并切换到输入模式
yy 复制光标所在行
p 在光标所在行的下方粘贴
P 在光标所在行的上方粘贴
底行模式下常用指令:
:w 写入修改(保存文件)
:q 退出
:wq 保存并退出
:wqa 保存所有文件并退出
:! 强制执行
:ls 列出打开的所有文件
:n 切换到下一个文件
:N 切换到上一个文件
:set nu 显示行号
:sp a.c 新建文件a.c
:15 把光标定位到第15行行首
:/xxx 在光标当前位置向后搜索“xxx”,搜索到后光标定位到第一次出现“xxx”的行首
:?xxxx 在光标当前位置向前搜索“xxx”,搜索到后光标定位到第一次出现“xxx”的行首
(十一) 常用快捷键
ctrl + c : 强制停止当前命令
ctrl + l : 清屏
ctrl + a : 光标移动到命令行首
ctrl + e : 光标移动到命令行尾
ctrl + u : 从光标所在位置删除到行首
ctrl + z : 命令放到后台
ctrl + r : 历史命令中搜索
注:以上内容来源于网络与书籍,个人稍作整理!