5

1.文本搜索

如果vi或vim打开一个很大的文件,不易查找到对应的内容。可以用查找命令:

末行模式下输入"/关键字",输入的关键字会高亮显示,按"n"向下查找,按"N"向上查找。

2.vim恢复以及乱码问题

(1)在vi或vim中误删了东西,想要恢复的方法:

按ESC退出编辑模式,再按u键撤销之前的修改内容。

(2)在用vi或vim打开文件时,如果出现了特殊符号或是乱码,可以通过以下命令尝试:

 vim -b test.txt

(-b一般用来查看对应的二进制文件的)

3.管道命令,即竖杠--》'|'

将查询出来的内容交给管道后面的命令装饰之后再显示出来

经常跟grep(过滤)搭配使用,如:

1.cat -n test.txt|grep "123"    //显示123所在行的全部内容

2.ps -ef | grep java;ps -aux | grep java  //查看java进程

4.grep命令

(1).显示匹配的后n行 (after)

grep -A n

(2).显示匹配的前n行(before)

grep -B n

(3).显示匹配的前后n行(context)

grep -C n

(4).忽略大小写

  grep -i str

5.查看某文件被哪个进程所占用

lsof 文件名

6.查看python的版本

python -V

python --version

7.用户和用户组

useradd April           //创建用户

groupadd Family      //创建用户组

cat /etc/passwd        //查看所有用户信息

cat /etc/shadow        //查看所有用户的密码信息

cat /etc/group           //查看所有用户组信息

cat /etc/gshadow        //查看所有用户组的密码信息

8.find 搜索文件或目录

find /home -name helloword*  //查找home目录下名为helloword开头的文件或目录

find / -name h?ll* 

find / -size +1000k    //查找根目录下大于1000k的文件

find 查找效率比较低

查找命令还有:locate,whereis xxx

9.字符串替换命令

:s/well/good/            //替换当前行第一个well为good

:s/well/good/g          //替换当前行所有well为good

:n,$s/well/good/       //替换第n行开始到最后一行中每一行第一个well为good

:n,$s/well/good/g      //替换第n行开始到最后一行中每一行所有well为good

:.,$s/well/good/g      //替换当前行开始到最后一行中每一行所有well为good

:%s/well/good/          //替换每一行的第一个well为good

:g/well/s//good/          //同上

:%s/well/good/g         //替换每一行的所有well为good

:g/well/s//good/g        //同上

转义字符:可以使用#为分隔符,此时中间出现的/不会作为分隔符

:s#well/#good/#          //替换当前行第一个well/为good/

:%s#/usr/bin#/bin#g                               //把文件中所有路径/usr/bin换成/bin

10.重定向命令

(1).标准的输入控制

语法:命令 < 文件 //把文件作为命令的输入

如:mail -s "sendmail test" test@test.com < file1 //将文件file1当做信件的内容发送给。。。

(2).标准的输出控制

①语法:命令 > 文件 //把命令执行结果输出到文件中

如:

ls -l > list.txt                 //命令结果输出到list.txt文件中

ls -l > list.txt                //命令结果输出到list.txt文件中,list已经存在则覆盖

②语法:命令 >& 文件 //将命令执行时屏幕上所产生的任何信息(标准输出+标准错误输出)写入指定的文件中

如:

cc file1.c >& error    //将编译file1.c 文件时所产生的任何信息写入文件error 中。

小结:

'>' 会覆盖原文件内容。

'》'语法同>,不覆盖文件内容,将结果追加到文件中。

11.vi删除行

命令行模式下执行:

dd:删除光标所在行

ndd:删除光标所在行的向下n行

190,6233d            //即[190,6233]都删除掉

清空文件内容的几种方法:

: > filename

  filename

 echo "" > filename

 echo > filename

 cat /dev/null > filename

12.vi定位行

命令行模式下输入:

 G:     //直接定位到最后一行

 1G:   //直接定位到第一行

 nG:    //直接定位到第n行

13.vi复制行

 yy                 // 复制当前行

 nyy                // 从当前行开始复制n行

 p                    //粘贴

14.ll或ls显示说明

ll -ht    //h表示安装标准格式自动转换大小,即:456M,1.2G;t表示显示内容按照实际倒序排列

ls中文件颜色的意义:

蓝色代表目录

绿色代表可执行文件

红色代表压缩文件

浅蓝色代表链接文件

灰色代表其他文件

15.修改权限

将/home/April/lib文件夹及其里面内容的所有者修改为April

chown -R April:April /home/April/lib

16.常用查看系统使用情况的命令

(1)查看内存使用情况:free -m (m是MB,g为GB)

(2)查看磁盘使用情况:df -lh

(3)查看cpu使用情况:cat /proc/cpuinfo

cat /proc/cpuinfo | grep "model name"      //只显示一行对应的cpu型号以及其他信息

cat /proc/cpuinfo | grep "model name" | wc -l    //统计出一共有多少核

(4.1)查看当前操作系统发行版本信息:

cat /etc/issue

cat /etc/redhat-release 

(4.2)查看当前操作系统更为底层的信息

cat /proc/version                        

(5.1)查看某文件夹的空间使用情况:du -h 文件夹名

(5.2)查看某文件夹内的所有文件的大小:du -sh * (先cd到当前文件夹)

17.查看端口连接状态的链接数

(1) netstat -nlap

(2) netstat -nlap | grep -i est // grep -i 表示忽略大小写,est表示 ESTABLISHED,只显示连接状态的端口,如图

(3) netstat -nlap | grep -i est | grep -i 123 | awk '{print $4}' //awk '{print $4}'表示只打印第四列,如图

(4) netstat -nlap | grep -i est | grep -i 123 | wc -l //统计数据,如图

注:grep命令最后的那个显示出来的结果以它进行标红,如图

图片描述

18.同步服务器时间

利用ntpdate

再利用crontab将命令启用为定时执行脚本。

参考文章:https://www.zhihu.com/questio...

19.SSH登录限制

(1) root用户SSH登录限制

 vi /etc/ssh/sshd_config

 PermitRootLogin yes  //允许root用户 SSH登录

 PermitRootLogin no   //不允许root用户 SSH登录

(2)普通用户的SSH登录限制

 vi /etc/ssh/sshd_config

 AllowUsers April     //如此设置后,只能用户April 以SSH形式登录,其他用户登录不了

注:修改文件后,使用如下命令使其生效

  service sshd reload

20.常用jdk系统环境变量配置

JAVA_HOME=/usr/java/jdk1.8

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

PATH=$JAVA_HOME/bin:$PATH

21.查看linux的防火墙是否阻止80端口

 iptables -vnL | grep ":80"

有内容返回说明开放了,无内容说明阻止了


April
159 声望7 粉丝

润新苗于细雨 成万物于美田


下一篇 »
vi(vim)命令