解锁 Linux 高效操作:Vim 进阶与系统管理全攻略

Vim 编辑器进阶操作

光标移动

行间移动

  • gg键:移动光标到第一行(命令模式下
  • G键:移动光标到最后一行(命令模式下
  • :n:移动到第n行,写法举例::6:移动到第6行(末行模式下

列间移动

  • $键:移动光标到当前行的行尾(最后一列),有些电脑需要使用Shift+$(命令模式下)
  • 0键:移动光标到当前行的行首(第一列)(命令模式下)
  • 方向键:上下键实现行间移动,左右键实现列间移动
删除操作

列删除

  • x键:删除当前光标所在处一个字符(命令模式下
  • nx键:删除当前光标所在处以及后面共n个字符,如:6x:删除从当前光标处共6个字符(命令模式下
  • X键:删除当前光标处左边一个字符(命令模式下
  • nX键:删除当前光标处左边共n个字符,如6X:删除当前光标处左边共6个字符(命令模式下
  • D键:删除当前光标至行尾(最后一列)(命令模式下)

行删除(重点)

  • 当前光标所在行。(命令模式下
  • ndd键:删除当前光标所在处至后面共n行,如:6dd:从光标处开始连续删除6行(命令模式下
  • dG键:删除当前光标所在处至文件末尾(命令模式下
  • :n1,n2d:删除n1~n2行,如:1,12d:表示删除1~12行末行模式下
高效编辑技巧

多行缩进

  • >>:当前行向右缩进一级
  • <<`:当前行向左缩进一级
  • n>>:从当前行开始的连续 n 行向右缩进(如 5>>

复制粘贴

  • 复制列字符: 多按几次ESC,然后按v键,进入可视方式,移动方向键选中文本,然后按y键,就完成了拷贝。需要结合p键进行粘贴。(命令模式下
  • yy:复制当前整行 (命令模式下),需要结合p键进行粘贴。
  • nyy:复制从当前行开始的连续 n 行(如 4yy`) (命令模式下
  • p`:在光标下一行粘贴内容 (命令模式下
  • P:在光标上一行粘贴内容 (命令模式下
  • :n1,n2 copy dn:复制n1~n2行数据然后粘贴到dn行,如:3,14 copy 2,从第3行开始拷贝至第14行,粘贴到第2行的下一行。(末行模式下

撤销与重做

  • u:撤销最近一次操作 (命令模式下
  • U:撤销当前行中的所有操作 (命令模式下
  • Ctrl + r:重做被撤销的操作 (命令模式下

搜索替换

  • /keyword向下搜索关键词(末行模式输入) 举例:/int:要查询的字符串是int。(末行模式 + 命令模式
  • ?keyword向上搜索关键词 举例:?int:要查询的字符串是int。(末行模式 + 命令模式
  • :%s /old/new:将全文每一行第一个匹配项old_string替换成new_string(末行模式下
    测试数据:
第1行:int main(int args)
第2行:int func(int params)

替换结果

第1行:int main(int args)
第2行:int func(int params)

:%s /int/void/g : 将全文所有匹配项old_string替换成new_string(末行模式下
测试数据:

第1行:int main(int args)
第2行:int func(int params)

替换结果

第1行:void main(void args)
第2行:void func(void params)

分屏操作

  • :vsp:垂直分屏打开新文件
  • :sp:水平分屏打开新文件
  • Ctrl + w + 方向键:切换分屏窗口

VIM其他指令

  • :set nu:设置行号(末行模式下
  • :set nonu:取消设置行号(末行模式下
  • Ctrl+G:显示文件名,当前的行号,文件的总行数和文件位置的百分比(末行模式下

虚拟机网络模式

桥接模式直接连接到物理网络,与主机共享同一网段,能够访问互联网,性能接近物理机,但会占用额外的IP地址,可能因IP冲突导致连接不稳定。

NAT模式通过虚拟网络适配器共享主机的IP地址,虚拟机使用独立的内网网段,无需额外占用外部IP,适合多虚拟机场景,但网络性能略低于桥接模式。

仅主机模式创建独立的虚拟网络,仅允许虚拟机与主机间通信,无法访问外部网络,适用于需要隔离网络的环境,如安全测试或内部开发。


常用网络指令

  • ping -c 5 192.168.31.205
    发送5次ICMP请求测试目标主机连通性,-c参数控制请求次数,适用于快速检测网络延迟或丢包。

  • sudo ifconfig ens33 192.168.31.205
    临时配置网络接口IP地址,需Root权限,重启后失效。ens33为网卡名称,替换为目标设备名。

  • netstat -tuln
    显示所有TCP/UDP监听端口及对应服务,-t-u筛选协议类型,-n禁用域名解析加快输出速度。


####进程管理指令

  • -ps -aux
    列出所有用户进程的详细信息,包括CPU/内存占用、启动命令等,BSD格式输出更易读。

  • top
    动态监控系统资源使用情况,按CPU或内存排序进程,支持交互命令如k终止进程。

  • kill -9 20665
    强制终止指定PID的进程,-9发送SIGKILL信号,适用于无响应的进程。

  • killall -9 yueqian
    通过进程名称批量终止所有匹配进程,避免手动查找PID。


磁盘空间分析

  • du -h ~ (重点)
    显示用户主目录下各文件/文件夹的磁盘占用,-h自动转换为KB/MB/GB单位。

  • df -h
    查看所有挂载分区的总空间、已用空间及剩余比例,-h优化可读性,快速定位存储瓶颈。


挂载与卸载操作

  • sudo mount /dev/sda1 /mnt/udisk
    将设备sda1挂载到/mnt/udisk目录,需确保挂载点已存在且有足够权限。

  • sudo umount -f /dev/sda1
    强制卸载设备,-f参数用于处理文件系统忙或无法正常卸载的情况。


NFS共享配置

-服务端:
通过/etc/exports定义共享目录及权限,例如:
/home/st/share *(rw,sync,no_root_squash)
*允许所有IP访问,rw开启读写,sync同步写入确保数据一致性。

客户端:
使用showmount -e 192.168.1.100查看服务端共享列表,通过mount挂载到本地目录如/mnt/remote


Samba共享配置

服务端:
编辑/etc/samba/smb.conf添加共享段:

[share]
path = /home/shared
browseable = yes
writable = yes
guest ok = yes

设置目录权限为chmod 777 /home/shared并重启服务生效。

Windows客户端通过\\LinuxIP访问共享,需确保防火墙允许Samba端口(139/445)。


FTP服务部署

修改/etc/vsftpd.conf关键参数:

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES

限制用户只能访问其主目录(chroot),启用本地用户登录及文件上传权限。

客户端连接时使用Linux用户凭据,工具如FileZilla需选择SFTP或FTP协议(端口21)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值