在软件项目开发中,难免会用到Linux操作系统,这里整理了一些目前用到过的Linux命令(常用的),后续还会继续补充
1.cd命令:
cd是Change Directory的缩写,这个命令是用来切换工作目录的命令。
语法:cd[相对路径或者绝对路径或特殊符号]
说明:不加参数时,默认切换到用户主目录,即环境变量HOME指定的目录,相对路径是相对于当前路径来说的
举例:cd /app/ebankapp/log/logback
cd ~ 表示用户主目录,即HOME变量指定的目录,如root用户的主目录为/root
cd .. 表示上级目录
cd . 表示当前目录
cd ../..表示上两级目录
cd - 表示前一个工作目录
2.ls命令:
ls是(list)命令是Linux下最常用的命令。通过ls命令可以查看Linux文件夹包含的文件,文件权限(包括目录、文件夹、文件权限),查看目录信息等
语法:ls[选项][目录名]
常用参数:
ls -a:与没有参数的ls命令的区别是ls -a会将以**.**的隐含文件也给显示出来
ls -c:每栏由上向下显示文件
ls -d:将目录像文件一样显示,而不是显示目录下的文件
ls -f:与ls -a没有太大区别,只是对输出文件不进行排序
ls -l:除了会显示文件名之外,还将文件的权限、所有者、文件大小等详细信息列出来,简写为ll
ls -m:所有文件以逗号分隔,并填满整行行宽
ls -s(size):以块大小为单位列出所有文件的大小
ls -S:根据文件大小排序
经常用到的:ls -l,ls -a
3.grep命令:
此命令的作用是从文本文件或者管道数据流中筛选出匹配的行及数据,grep中的匹配模式,都是你要好找的东西,可以使普通的文字符号也可以是正则表达式
语法:grep[参数][匹配模式][查找的文件]
参数说明:
grep -c:计算找到''搜索字符串''的行数
grep -o:指出匹配的内容
grep -i:不区分大小写
grep -n:显示匹配内容的行号
grep -v:反向选择,即没有"没有搜索字符串"内容的行
grep -V:显示软件版本信息
举例:常用的方法:例如查找log.txt文件中包含'我爱你'的字样的地方,并且显示行号
命令为grep -n '我爱你' log.txt
当然还可以使用正则表达式来进行匹配搜索,这里有需要的童鞋可以学习一下,就不在列出了
4.tail命令:
tail命令从指定点开始将文件写到标准输出,使用tail -f filename 可以方便的查阅正在改变的日志文件,最末尾的内容会显示在屏幕上并且不断刷新
语法:tail[必要参数][选择参数][文件]
参数说明:
tail- f:循环读取
tail -q:不显示处理信息
tail -v:显示详细的处理信息
tail -c<数目> 显示的字节数
tail -n<行数>显示行数
举例:1.显示文件末尾内容
tail -n 10 log.log,显示文件最后10行内容
2.循环查看文件内容
tail -f log.log
2.从第10行开始显示文件内容
tail -n +10 log.log
5.mv命令:
mv命令是move的缩写,可以用来移动文件或者将文件改名
语法:mv[选项]源文件或目录 目标文件或目录
参数说明:
mv -b:当覆盖文件之前先行备份
mv -f:当覆盖文件时,不询问直接覆盖
mv -i:当覆盖文件之前,会询问是否覆盖
mv -u:只有当源文件是最新更新时,才可以覆盖目标文件
mv -t:当需要移动多个源文件时,适用于这种方式,这时目标目录在前,源文件在后
两种情况:
1.当mv命令中的第二个参数类型是文件时,实现重命名源文件或目录的功能,这里的源文件或目录只能有一个,因为有多个时会存在命名冲突的问题
2.当mv命令中的第二个参数类型是目录时,实现的是移动源文件和目录的功能,这里源文件或者目录可以有多个,mv命令会将源文件或目录移动到目标目录下
6.服务器相关信息查看(端口占用,CPU,内存占用,防火墙,系统信息等)
端口占用情况:
(1)查看所有端口、进程的使用情况:netstat -tunlp
(2)查看某一端口的使用情况:netstat -tunlp|grep 8080
内存使用情况:
(1)查看占用情况(动态):top :按下P(大写)可以找到占用内存最大的进程
(2)查看占用情况(总的):free
(3) 查看占用内存最多的N个进程:ps -aux|sort -k4nr|head -k ,如果是10个进程,k=10,如果是最高的三个,k=3
(4) 查看硬盘空间大小:df -lh
防火墙:
(1)查看防火墙状态:firewall-cmd --state
(2) 开启防火墙:systemctl start firewalld ; 关闭防火墙:systemctl stop firewalld.service
(3) 重启防火墙:firewall-cmd --reload
(4) 禁止防火墙开机启动:systemctl disable firewalld.service
(5) 设置防火墙开机启动:systemctl enable firewalld.service