Linux基本常用命令总结
前提摘要:本来想练习下基本的Linux命令,于是就在自己的云服务器上安装了个Centos,刚开始下载了SecureCRT,需要license,于是果断放弃,然后重新下载putty
结果又遇到一个问题,使用root用户连接,输入密码后一直说Access denied,百度各种查,修改PermitRootLogin这个什么没用,最后在centos下新建了一个普通用户,使用到以下命令:
1.查看当前用户,注意后面的冒号:
cat /etc/passwd |cut -f 1 -d :
2.新建一个用户,名字为tester0312,命令为:useradd 新建用户名:
3.为用户设置密码,命令为:passwd tester12:
4,会在/home目录下新建同名的家目录,设置完密码后,切换用户,命令为:su - tester0312
5. 切换用户成功,然后用putty工具登录,使用新建的用户名和密码登录即可
6. 删除用户,命令:userdel tester0312,如果想家目录也随之删除,可以加-r
啰嗦了那么多,下面才是Linux的基本常用命令,先从文件与目录管理的命令开始:
1.pwd:显示当前目录
2.cd:切换目录,这个就不截图了。。
3.mkdir:创建目录
4.rmkdir:删除空目录
5.ls:列出目录,结合-l使用,文件属性
6.cp:拷贝文件或者目录
7.rm:移除文件或者目录
第二部分,主要讲VIM编辑器,工作中还是经常用到的,很多时候忘了怎么切换模式,下面详细介绍:
vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。
- 命令模式通过vi +文件名进入,进入命令模式以后是输入不了任何内容的,
- 只有输入i才能进入输入模式,输入完内容怎么退出并保存呢?
- ESC退出输入模式,又进入命令模式
- 输入:进入底线命令模式,wq(保存)或者q(不保存)
-
在命令模式,光标选择后输入p粘贴
-
拷贝当前行 ,yy,拷贝当前行下面的5行,5yy
-
删除当前行,dd,删除当前行下面的5行,5dd
-
查询某个单词,命令模式下,/关键字 回车
-
设置文件的行号,命令行下输入:set nu 如果取消行号:set nonu
-
到文档的最末行或者首行,G gg
-
撤销某个输入,在命令模式输入u即可
-
将光标移到指定的行 1.设置行号 2.输入指定的行数值,3输入shift+即可
第三部分,主要讲文件内容查看,在测试时查看日志比较常用:
1.cat+文件名:查看文件
2.nl+文件:显示的时候,也显示行号:
3.more filename:一页一页的显示
4.tail -f filename:适用于看日志场景,会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容
-f循环读取
-n<行数> 显示文件的尾部 n 行内容,例如tail -n 5 a.log 显示a.log文件的最后5行
--pid=PID 与-f合用,表示读取进程pid的日志文件
第四部分,find和grep两个命令的用法,以及两者结合的用法
1. # find . -name filename 找出文件名称符合条件的文件,
例如记得有个文件大概叫什么名字,可以模糊搜索,find ./ -name "*.log"
2. grep 命令用于查找文件里符合条件的字符串。例如在日志文件中查找某天的报错信息
例如$ grep "被查找的字符串" 文件名 -查找出文件中含有字符串的行
3. grep - r 递归的方式查找符合条件的文件
例如 grep -r update /etc/acpi 在/etc/acpi目录下,查找含有update字符串的文件,并打印updata字符串所在行的信息
4.find和grep结合使用的场景还是比较多的:
$ find / -type f -name "error.log" | xargs grep "2020-03-01" -在根目录下找到名称为error.log的文件,并包含这个字符串的行
5.查看进程 ps -ef