命令
正常方式
1.docker ps|grep my-docker-name
2.docker logs -f --tail 100 docker-id
原理
1.知道docker的名称,使用名称获取docker的id
2.使用docker的id,根据id跟踪100行的日志
优化
优化命令
docker logs -f --tail 100 $(docker ps|grep my-docker-name | awk '{print $1}')
优化原理
docker ps
: 列出所有正在运行的容器。
grep minio
: 从docker ps的输出中筛选出包含minio的行。
awk '{print $1}'
: 使用awk命令打印出筛选后的行的第一列,即容器的ID。
$(...)
: 这是一个命令替换的语法,它会执行括号内的命令,并将其输出替换到当前位置。在这个例子中,它会将docker ps | grep minio | awk '{print $1}'
的输出(即容器ID)替换到命令中。
docker logs -f --tail 100 <container_id>
: 显示指定容器的日志。-f参数表示跟踪日志输出(即实时更新日志),–tail 100参数表示只显示最后100行的日志。
整个命令的工作流程是:
首先,通过docker ps列出所有正在运行的容器。
然后,通过grep和awk筛选出名为mgr的容器的ID。
最后,使用筛选出的容器ID来跟踪该容器的最后100行日志。