原创

VIM文本编辑器

VIM文本编辑器

vim/vi是Unix / Linux上最常用的文本编辑器而且功能非常强大。

只有命令,没有菜单。

VIM工作模式

命令模式:又称一般模式

编辑模式:又称底行模式,命令行模式

插入命令

命令

作用

a

在光标后附加文本

A(shift + a)

在本行行末附加文本 行尾

i

在光标前插入文本

I(shift+i)

在本行开始插入文本 行首

o

在光标下插入新行

O(shift+o)

在光标上插入新行

定位命令

命令

作用

:set nu

设置行号

:set nonu

取消行号

gg G

到第一行 到最后一行

nG

到第n行

:n

到第n行

保存和退出命令

命令

作用

:w

保存修改

:w new_filename

另存为指定文件

:w >> a.txt

内容追加到a.txt文件中 文件需存在

:wq

保存修改并退出

shift+zz(ZZ)

快捷键,保存修改并退出

:q!

不保存修改退出

:wq!

保存修改并退出(文件所有者可忽略文件的只读属性)

不保存并退出:

1,有修改,但是修改后的内容是不保存的

2,有突发情况,导致窗口退出。修改文件之后,直接删除同名的.swp文件

删除命令

命令

作用

x

删除光标所在处字符 nx 删除光标所在处后n个字符

dd

删除光标所在行,ndd删除n行

:n1,n2d

删除指定范围的行(eg :1,3d 删除了123这三行)

dG

删除光标所在行到末尾的内容

D

删除从光标所在处到行尾

复制和剪切命令

命令

作用

yy、Y

复制当前行

nyy、nY

复制当前行以下n行

dd

剪切当前行

ndd

剪切当前行以下n行

p、P

粘贴在当前光标所在行下 或行上

替换和取消命令

命令

作用

r

取代光标所在处字符

R(shift + r)

从光标所在处开始替换字符,按Esc结束

u

undo,取消上一步操作

ctrl+r

redo,返回到undo之前

搜索和替换命令

命令

作用

/string

向后搜索指定字符串 搜索时忽略大小写 :set ic

?string

向前搜索指定字符串

n

搜索字符串的下一个出现位置,与搜索顺序相同

N(Shift + n)

搜索字符串的上一个出现位置,与搜索顺序相反

:%s/old/new/g

全文替换指定字符串

:n1,n2s/old/new/g

在一定范围内替换指定字符串

% 指全文,s 指开始,g 指全局替换

起始行,终止行s/要替换的字符串/替换的新的字符串/g c 询问确认

eg: :%s/ftp/yang/g 全局替换,把ftp替换为yang

eg: :41,44/yang/lee/c 从41行到44行,把yang替换为lee,询问是否替换

eg: :41,44/yang/lee/g 同上,不询问,直接替换

eg: :%s/\/root/\/ROOT/g 把/root替换为/ROOT

eg: :%s#/bin/bash#/bin/ksh/g 把/bin/bash全部替换为/bin/ksh

使用替换命令来添加删除注释

:% s/^/#/g 来在全部内容的行首添加 # 号注释

:1,10 s/^/#/g 在1~10 行首添加 # 号注释

vi里面怎么查命令??

:!which cp

vi里面怎么导入命令的结果?

:r !which cp

可视化模式

v 可视字符模式

V(shift+v) 可视行模式,选择多行操作

ctrl+v 可视块模式(列模式),操作列

I或者O进入插入模式。

网络通信命令

ping

命令路径:/bin/ping 执行权限:所有用户

作用:测试网络的连通性

语法:ping 选项 IP地址

-c 指定发送次数

ping 命令使用的是icmp协议,不占用端口

eg: # ping -c 3 127.0.0.1

ifconfig

英文:interface configure 命令路径:/sbin/ifconfig 执行权限:root

作用:查看和设置网卡网络配置

语法:ifconfig [-a] [网卡设备标识]

-a:显示所有网卡信息

ifconfig [网卡设备标识] IP地址 修改ip地址

netstat

英文:network statistics 命令路径:/bin/netstat 执行权限:所有用户

作用:主要用于检测主机的网络配置和状况

-a all显示所有连接和监听端口

-t (tcp)仅显示tcp相关选项

-u (udp)仅显示udp相关选项

-n 使用数字方式显示地址和端口号

-l (listening) 显示监控中的服务器的socket

eg:# netstat -tlnu 查看本机监听的端口

tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN

协议 待收数据包 待发送数据包 本地ip地址:端口 远程IP地址:端口

#netstat -au 列出所有 udp 端口

# nestat -at 列出所有tcp端口

#netstat -an 查看本机所有的网络连接

netstat –antpl

进程管理命令

进程和程序的区别:

1、程序是静态概念,本身作为一种软件资源长期保存;而进程是程序的执行过程,它是动态概念,有一定的生命期,是动态产生和消亡的。

2、程序和进程无一一对应关系。一个程序可以由多个进程共用;另一方面,一个进程在活动中有可顺序地执行若干个程序。

进程和线程的区别:

进程: 就是正在执行的程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。

线程: 轻量级的进程;进程有独立的地址空间,线程没有;线程不能独立存在,它由进程创建;相对讲,线程耗费的cpu和内存要小于进程。

进程管理的作用?

判断服务器的健康状态

查看系统所有的进程

杀死进程

ps命令

作用:查看系统中的进程信息

语法:ps [-auxle]

常用选项

a:显示所有用户的进程

u:显示用户名和启动时间

x:显示没有控制终端的进程

e:显示所有进程,包括没有控制终端的进程

l:长格式显示

查看系统中所有进程

# ps aux #查看系统中所有进程,使用BSD操作系统格式,unix

# ps -le #查看系统中所有进程,使用Linux标准命令格式

ps应用实例 # ps -u or ps -l 查看隶属于自己进程详细信息

# ps aux | grep sam 查看用户sam执行的进程 # ps -ef | grep init 查看指定进程信息

pstree

作用:查看当前进程树

语法:pstree [选项]

-p 显示进程PID

-u 显示进程的所属用户

top

作用:查看系统健康状态

显示当前系统中耗费资源最多的进程,以及系统的一些负载情况。

语法:top [选项]

-d 秒数,指定几秒刷新一次,默认3秒(动态显示)

kill

作用:关闭进程

语法:kill [-选项] pId

kill -9 进程号(强行关闭) 常用

kill -1 进程号(重启进程)

用户管理命令

useradd

添加用户

语法:useradd [选项] 用户名

passwd

修改密码命令

语法:passwd [选项] [用户名]

用户密码:生产环境中,用户密码长度8位以上,设置大小写加数字加特殊字符,要定期更换密码。

ys^h_L9t

userdel(user delete)

删除用户

-r 删除账号时同时删除宿主目录(remove)

磁盘空间命令

df命令

作用:用于查看Linux文件系统的状态信息,显示各个分区的容量、已使用量、未使用量及挂载点等信息。看剩余空间

语法:df [-hkam] [挂载点]

-h(human-readable)根据磁盘空间和使用情况 以易读的方式显示 KB,MB,GB等 -k  以KB 为单位显示各分区的信息,默认

-M 以MB为单位显示信息 -a  显示所有分区包括大小为0 的分区

du命令

作用:用于查看文件或目录的大小(磁盘使用空间)

语法:du [-abhs] [文件名目录]

-a 显示子文件的大小

-h以易读的方式显示 KB,MB,GB等

-s summarize 统计总占有量

eg: du -a(all) /home  显示/home 目录下每个子文件的大小,默认单位为kb

du -b /home  以bytes为单位显示/home 目录下各个子目录的大小

du -h /home 以K,M,G为单位显示/home 文件夹下各个子目录的大小

du -sh /home  以常用单位(K,M,G)为单位显示/home 目录的总大小 -s summarize

df命令和du命令的区别:

df命令是从文件系统考虑的,不仅考虑文件占用的空间,还要统计被命令或者程序占用的空间。

du命令面向文件,只计算文件或目录占用的空间。

#df –h /

#du –sh /

free

作用:查看内存及交换空间使用状态

语法: free [-kmg]

选项:

-k: 以KB为单位显示,默认就是以KB为单位显示

-m: 以MB为单位显示

-g: 以GB为单位显示

清理缓存命令:

echo 1 > /proc/sys/vm/drop_caches

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • java基础--运算符介绍

    背雷管的小青年
  • Sentinel热点限流

    目标:Sentinel的基本应用 工具:IDEA--2020.1、Sentinel Maven SpringCloud 学习目标:学习Sentinel热点限流...

    背雷管的小青年
  • Nacos实现服务端和消费端的注册和发现

    目标:Nacos实现服务端和消费端的注册和发现 工具:IDEA--2020.1、Nacos、云服务器 学习目标:服务端开发和消费端开发 本次学习的工程下载链接放...

    背雷管的小青年
  • 通俗易懂设计模式解析——命令模式

      今天我们一起来看行为型设计模式中的命令模式、何为命令模式呢?先谈命令——我现在需要对某一条信息进行删除,我进行点击删除按钮。后台执行删除的命令、对信息进行删...

    小世界的野孩子
  • C# CsRedis的初探(七)-- Redis常用命令整理(其它篇)

    事务的原理是先将属于一个事务的命令发送给redis ,然后再让 redis 依次执行这些命令

    Vaccae
  • 深入浅出话命令

    WPF为我们准备了完善的命令系统,你可能会问:“有了路由事件为什么还需要命令系统呢?”。事件的作用是发布、传播一些消息,消息传达到了接收者,事件的指令也就算完成...

    莫问今朝
  • 20条最最常用的Linux命令讲解

    推荐阅读 微服务: springboot系列教程学习 源码:Javaweb练手项目源码下载 调优:十五篇好文回顾 面试笔试:面试笔试整理系列 玩过Linux的人...

    企鹅号小编
  • Linux之常用系统监控指令

    对于上面的命令,有些是Linux系统自带的,你可以直接执行。有些是第三方命令,不过绝大多数可以直接通过Yum install xxx或者apt-get inta...

    用户6367961
  • History(历史)命令用法 15 例

    如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率。本文将通过实例的方式向你介绍 history 命令的 15 个用...

    小小科
  • 半小时搞会 CentOS 入门必备基础知识

    文章最后推介了几个免费视频,B 站和慕课上的免费学习视频挺多,而且有些质量还是不错的。

    前端下午茶

扫码关注云+社区

领取腾讯云代金券