千家信息网

shell中常用的vi编辑命令有哪些

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍shell中常用的vi编辑命令有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、常用的vi编辑命令模式切换搜索:进入尾行模式, /关键词 回车自动匹配 按
千家信息网最后更新 2026年10月31日shell中常用的vi编辑命令有哪些

这篇文章主要介绍shell中常用的vi编辑命令有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1、常用的vi编辑命令

  • 模式切换


  • 搜索:进入尾行模式, /关键词 回车自动匹配 按N键找寻下一个

  • 行号设置 :进入尾行模式 设置行号:set nu 取消行号:set nonu

  • 命令行模式常见的快捷键:
    dd:删除当前行
    dG:删除光标当前及以下的所有行
    ndd:删除光标当前及以下的n行
    gg:跳转到第一行的第一个字母
    G:跳转到最后一行的第一个字母
    shift+$ 行尾

  • 注意:刚进行命令行模式想进行粘贴文件内容时,一点要先按 i 键后再进行粘贴,否则会丢失文件内容;

  • 注意:编辑或者调优配置文件前,一定要进行备份

2、系统命令

  • 查看磁盘

[root@hadoop ~]# df -hFilesystem            Size  Used Avail Use% Mounted on/dev/mapper/vg_hadoop-lv_root                       50G  3.8G   43G   8% /tmpfs                 996M     0  996M   0% /dev/shm/dev/sda1             477M   42M  410M  10% /boot/dev/mapper/vg_hadoop-lv_home                       94G  2.3G   87G   3% /home/dev/sr0              3.7G  3.7G     0 100% /mnt/cdrom
  • 查看内存 (扩展内容:http://blog.itpub.net/30089851/viewspace-2131678/)

[root@hadoop ~]# free -h             total       used       free     shared    buffers     cachedMem:          1.9G       691M       1.3G       256K        46M        74M-/+ buffers/cache:       570M       1.4G Swap:         3.9G         0B       3.9G
  • 查看负载

[root@hadoop ~]# toptop - 23:04:17 up 14 min,  2 users,  load average: 0.04, 0.01, 0.00Tasks: 150 total,   1 running, 149 sleeping,   0 stopped,   0 zombieCpu(s):  0.0%us,  0.0%sy,  0.0%ni, 99.9%id,  0.0%wa,  0.0%hi,  0.1%si,  0.0%stMem:   2039008k total,   707992k used,  1331016k free,    47688k buffersSwap:  4095996k total,        0k used,  4095996k free,    76636k cached   PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                              866 root      20   0     0    0    0 S  4.7  0.0   0:01.14 vmmemctl                                                               21 root      20   0     0    0    0 S  0.3  0.0   0:00.55 events/2                                                                1 root      20   0 19364 1536 1228 S  0.0  0.1   0:01.28 init                                                                    2 root      20   0     0    0    0 S  0.0  0.0   0:00.01 kthreadd                                                                3 root      RT   0     0    0    0 S  0.0  0.0   0:00.01 migration/0
  • 案例:负载控制

[root@hadoop ~]# toptop - 23:04:17 up 14 min,  2 users,  load average: 0.04, 0.01, 0.00

注意:负载均衡的数值不能超过10,即:load average: 0.04, 0.01, 0.00,后面这三个值别超过10,超过10表示当前机器繁忙

  • 举例:

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
177 root 20 0 0 0 0 S 50% 70% 0:34.13 xxxx 去看看xxx这个进程是做什么
1777 root 20 0 0 0 0 S 3908% 80% 0:34.13 hbase regionserver

上面案例描述中有两个问题

(1)如果某服务长期占用cpu或者men,去检查这个进程是在做什么

(2)如果cpu飙升3000%以上,夯住 ,代码级别,如果不是自己编写的代码,大概率硬件级别-->内存条坏了

排查其他都没问题,重启机器吧

3、查看进程、查看端口号

  • 查看进程:ps -ef 查看这台服务器后台所运行的进程,可以使用管道符进行筛选,最后一条记录表示的当前的查询进程

[root@hadoop ~]# ps -ef | grep ssh#进程用户 进程的pid 父id            进程用户的内容(进程所属的目录)root       2081      1  0 22:49 ?        00:00:00 /usr/sbin/sshdroot       2367   2081  0 22:50 ?        00:00:00 sshd: root@pts/0 root       2395   2081  0 22:54 ?        00:00:00 sshd: hadoop [priv]hadoop     2397   2395  0 22:54 ?        00:00:00 sshd: hadoop@pts/1root       2534   2369  0 23:38 pts/0    00:00:00 grep ssh
  • 过滤掉自己当前查询的进程: -v表示过滤

[root@hadoop ~]# ps -ef | grep ssh | grep -v greproot       2081      1  0 22:49 ?        00:00:00 /usr/sbin/sshdroot       2367   2081  0 22:50 ?        00:00:00 sshd: root@pts/0 root       2395   2081  0 22:54 ?        00:00:00 sshd: hadoop [priv]hadoop     2397   2395  0 22:54 ?        00:00:00 sshd: hadoop@pts/1
  • 查看端口号:netstat -nlp 查询所有的端口号,结合grep筛选自己想要的端口号

[root@hadoop ~]# ps -ef | grep ssh | grep -v greproot       2081      1  0 22:49 ?        00:00:00 /usr/sbin/sshdroot       2367   2081  0 22:50 ?        00:00:00 sshd: root@pts/0 root       2395   2081  0 22:54 ?        00:00:00 sshd: hadoop [priv]hadoop     2397   2395  0 22:54 ?        00:00:00 sshd: hadoop@pts/1[root@hadoop ~]# netstat -nlp |grep 2397   #没有显示代表没有端口号[root@hadoop ~]# netstat -nlp |grep 2081   #端口号:22tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      2081/sshd           tcp        0      0 :::22                       :::*                        LISTEN      2081/sshd           [root@hadoop ~]# netstat -nlp |grep 2395[root@hadoop ~]#

通过pid找port(端口号):因一个服务没有端口号都能运行
1: 启动一个进程 ps 必须
2: 可能启动一个port netstat 不是必须

  • 在centos部署大数据组件,发现一个错误 Connection refused

    (1)防火墙 web iptables

(2)ping ip 测试ip

(3)telnet ip port 测试ip和端口号 (注:在Windows7 中telnet要单独部署,下面介绍命令部署)

  • 部署telnet命令

window cmd黑窗口 不带 telnet命令 ,需要去安装一下 重启电脑

  • Linux部署Telnet命令

[root@hadoop ~]# yum install -y telnetLoaded plugins: fastestmirror, refresh-packagekit, securitySetting up Install ProcessLoading mirror speeds from cached hostfile * base: mirrors.cn99.com * extras: mirrors.cn99.com * updates: mirrors.163.combase                                                               | 3.7 kB     00:00     extras                                                             | 3.4 kB     00:00  ...Installed:  telnet.x86_64 1:0.17-48.el6                                                             Complete!
[root@hadoop ~]# which telnet/usr/bin/telnet

4、高危命令

  • rm -rf /

  • vi 生产配置文件 100行 保存==》 cp xxx.xml xxx.xml20191117

  • kill -9

kill -9 进程pidkill -9 进程pid 进程pid 进程pidkill -9 $(pgrep -f 匹配关键词)
ps 进程 xxx,top命令查询夯住的 / 删除xxx进程杀进程之前,先ps 找到相关的进程,搞清楚,哪些是你要杀的,不然造成生产事故

5、安装yum软件

yum search xxx  #查找yum install -y xxx-yyy  #安装  -y代表遇到判断yes/no 询问是 默认判断是yesyum remove xxx-yyy #卸载

6、rpm包管理

[root@hadoop ~]# rpm -qa | grep http   #查看httpd-tools-2.2.15-69.el6.centos.x86_64httpd-2.2.15-69.el6.centos.x86_64[root@hadoop ~]# rpm -e httpd-tools-2.2.15-69.el6.centos.x86_64   #卸载[root@hadoop ~]# rpm -e  --nodeps  httpd-tools-2.2.15-69.el6.centos.x86_64  #强制卸载,不校验,直接删除

7、wget下载安装包

wget http://archive.cloudera.com/cdh6/cdh/5/hadoop-2.6.0-cdh6.16.2.tar.gz

8、压缩解压

  • 压缩

zipzip -r xxx.zip ./*  在文件夹里面 zip -r ruozedata.zip ruozedata/* 在外面
  • 解压

unzip ruozedata.zip
  • 大数据组件的压缩包几乎都是后缀 tar.gz

tar -xzvf hadoop-2.6.0-cdh6.16.2.tar.gz

tar -czvf hadoop-2.6.0-cdh6.16.2.tar.gz hadoop-2.6.0-cdh6.16.2/*

Examples:  tar -cf archive.tar foo bar  # Create archive.tar from files foo and bar.  tar -tvf archive.tar         # List all files in archive.tar verbosely.  tar -xf archive.tar          # Extract all files from archive.tar.

补充:清空这个内容

cat /dev/null > xxx.log 完美
echo '' > xxx.log 存在1个字节

以上是"shell中常用的vi编辑命令有哪些"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

进程 命令 口号 内容 文件 模式 查询 常用 行号 服务 一行 代码 代表 光标 关键 关键词 内存 字母 尾行 数据 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司图片 科技制造互联网公司 互联网科技金融 北京互联网科技 金融科技与互联网金融 宜安科技 互联网金融 互联网科技上市公司 多迪互联网科技有限公司 青海省互联网新科技 汉立互联网科技有限公司联系电话 互联网对科技的发展 国大互联网教育科技有限公司工作 西安小鹰速贷互联网科技有限公司 济南有互联网科技公司吗 群盈汇互联网科技有限公司 互联网科技包装股 信承诺互联网科技有限公司 珠海东科互联网科技有限公司 安徽九吞吴互联网科技有限公司 宁波允成互联网科技有限公司 中关村互联网科技集团 广州互联网络科技有限公司 互联网金融科技平台 移动互联网年度科技创新 华夏恒生科技与互联网科技 电子商务与互联网科技的关系 银行科技岗属于互联网吗 四川互联网展示科技馆设计 互联网科技和医药行业 广州全民伙伴互联网科技有限公司
0