Linux命令补充

0 阅读4分钟

说明:之前介绍过Linux常用命令,本文补充一些Linux命令,非常实用或者长知识。

查看文本内容

在日常开发中,我们经常需要查看日志文件,来排查BUG,可以使用下面两个命令来查看日志:

# 持续监视log.txt最后100行的内容
tail -n 100 -f log.txt
# 寻找log.txt中有“error”的内容
grep -rina "error" log.txt

这两个命令,前者可以帮助我们打印日志,并在系统中复现BUG,打印出现BUG时的日志内容,后者可以帮助我们定位到指定内容的日志位置。

文件相关

查看当前目录下的内容,我们会用到ls命令,该命令组合的一些参数如下:

  • -l:显示更详细的文件信息;

  • -a:显示包括隐藏文件在内的所有文件和目录;

  • -t:按照修改时间排序;

  • -r:逆序显示;

  • -h:将文件大小以人类可读的方式显示;

部分参数,组合使用如下:

在这里插入图片描述


软连接和硬链接。在Linux中,可以通过ln -s命令创建一个软连接,软连接相当于Windows系统中的快捷方式,如果你需要修改一个执行文件的名称方便使用,直接修改执行文件名可能会无法启动程序,此时就可以创建一个软连接来实现,如下:

# mysqld.service为源文件名,mysql.service为链接文件名
 ln -s mysqld.service mysql.service

在这里插入图片描述

软链接相对于硬链接,软链接文件是几乎没有大小的,相当于一个指向箭头,当源文件被删除时,软链接文件也会打上一个标识,表示该软链接对应的源文件被删除,链接文件也没有用了(如果你够细心,Windows当快捷方式对应的文件被删除,双击快捷方式图标也会有类似的提示)。

在这里插入图片描述

而硬链接,是与源文件共享文件内容的,当源文件或者硬链接文件内容被修改,两者的内容会同步修改,使用不带参数的ln命令创建,如下:

# 创建一个source.txt的硬链接文件hardlink.txt
ln source.txt hardlink.txt

在这里插入图片描述

硬链接文件,是有文件大小的。

在这里插入图片描述

总结一下,软连接和硬链接的区别:

  • 大小:软链接是一个快捷方式,几乎没有大小,硬链接与源文件有相同的内容,相同的文件大小;

  • 指向:软链接可以指向文件或目录,硬链接只能指向文件;

  • 删除:软链接,源文件被删除,链接文件也失去了作用;硬链接,源文件被删除,链接文件没有影响。

目录相关

当我们需要创建一个目录结构时,可通过下面的命令:

mkdir -p dir1/dir2/dir3

在这里插入图片描述

切换目录,可以使用cd命令,附带参数-表示回到上次所在的目录,~表示切换到当前用户的家目录;

# 回到上次所在的目录
cd -
# 切换到当前用户的家目录
cd ~

在这里插入图片描述

查看目录结构,可使用下面的命令,显示当前位置下所有的目录

du -h

在这里插入图片描述

另外,可以安装一个工具,使用tree命令来以树状图的形式显示目录结构,如下:

# 安装tree
yum install tree

在这里插入图片描述

# 以树状图的形式,查看当前位置下的目录结构
tree

在这里插入图片描述

防火墙相关

# 查看防火墙状态
systemctl status firewalld

# 开启防火墙
systemctl start firewalld

# 关闭防火墙
systemctl stop firewalld

# 查看防火墙配置
sudo firewall-cmd --list-all

# 查看防火墙允许的端口
sudo firewall-cmd --list-ports

# 设置防火墙允许访问的端口,如3306
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent

# 刷新防火墙配置
sudo firewall-cmd --reload

# 移除防火墙开放的某端口,如22
sudo firewall-cmd --zone=public --remove-port=22/tcp --permanent

当我们部署完项目,但是通过IP地址无法访问时,需考虑服务器防火墙相关配置,看防火墙是否开启,开启了是否开放了所需要的端口,没开放要怎么开放?如下:

在这里插入图片描述

Java相关

可使用下面的命令,来查看当前系统中运行的Java进程;

# 查看当前系统中运行的Java进程
jps

在这里插入图片描述

如果需要后台运行一个Jar包,可使用下面的命令;

# 后台运行Jar包,控制台打印的信息存储到当前目录下的log.txt中
nohup java -jar jar包 > log.txt &

在这里插入图片描述

Docker相关

可使用下面的命令,将Docker容器中的文件复制到容器外,或将容器外的文件复制到容器内;

# 将容器外的文件复制到容器内
docker cp 容器外的文件路径 容器名:容器内的文件路径

# 将容器内的文件复制到容器外
docker cp 容器名:容器内的文件路径 容器外的文件路径

在这里插入图片描述

总结

文本介绍了Linux的一些命令,参考B站UP主:GeekHour 视频

其他Linux常用命令,参考:Linux常用命令

其他Docker常用命令,参考:Docker常用命令

首次发布

hezhongying.blog.csdn.net/article/det…