shell编写——查询进程PID、dokcer容器id等脚本

shell前面自己了解,这里直接写了,参考作用
注意:ubuntu 操作系统要 sudo su - ,进入root权限
创建shell文件 touch start.sh
文件创建,但没有什么权限,加入语句 chmod +x start.sh
1、查询进程的pid
#这里以mysql 为例查找
思路:我们先按照Linux,命令 保证我们指令没错 ps aux | grep mysql
在这里插入图片描述
这里可以看到PID在第二列!!!!位置需要记得后面有用
也有的用 ps -ef | grep mysql 这里我也不明白,但我都尝试可以
确定进程存在我们开始编写shell脚本

#!/bin/bash
#mysql的所有进程的PID
pid=$(ps aux | grep "mysql" | awk '{print $2}')
echo "mysql的所有进程的PID:"$pid



在这里插入图片描述
分析: ps是查看指令, grep是条件 ,awk是打印我们需要的字段PID在第二个字段 print $2 ,print $1就会是root。
我们加入限制条件查找local下的mysql

#!/bin/bash
pid=$(ps aux | grep "mysql" | awk '{print $2}')
echo "mysql的所有进程的PID:" $pid

#第二组
pid2=$(ps aux | grep 'mysql' | grep 'local' | awk '{print $2}')
echo "local下的mysql进程PID:"$pid2


#第三组
pid2=$(ps aux | grep 'mysql' | grep 'local' | awk '{print $1}')
echo "打印第一个列内柔:"$pid2


在这里插入图片描述

2、docker的有思路了
首先我们查看当前运行的 docker 容器,查到后我们就可以通过编写shell命令来执行

#!/bin/bash
  
#运行mysql
docker run -d -p 4406:3306 registry.cn-hangzhou.aliyuncs.com/zhufc/mysql:v2
docker ps
#获取到容器ID
id=$(docker ps |grep "mysql" | awk '{print $1}')

echo "容器id:"$id

                

获取到容器id后我们可以进行其他 操作了
例如进入容器 docker exec -it ${CONTAINER ID} bash

#!/bin/bash
  
#运行mysql
docker run -d -p 4406:3306 registry.cn-hangzhou.aliyuncs.com/zhufc/mysql:v2
docker ps
#获取到ID
id=$(docker ps |grep "mysql" | awk '{print $1}')
echo "容器id:"$id


#进入容器
docker exec -it $id bash
#打印当前的路径
pwd


在这里插入图片描述
运行结果,这里已经进入容器了,但是进入后用户切换了 pwd没执行。

这就是shell的查询id并打印的脚本。

### 回答1: 要获取Docker容器启动的参数,可以通过以下几种方式: 1. 使用`docker inspect`命令:通过该命令可以获取Docker容器的详细信息,包括容器的启动参数。可以通过`docker inspect <容器ID>`或`docker inspect <容器名称>`来获取指定容器的信息。在返回的JSON格式的输出中,可以找到`Args`字段,其中包含了容器启动时使用的命令和参数。 2. 使用`docker container ls`命令:通过该命令可以列出当前正在运行的容器的信息,包括容器的启动参数。可以通过`docker container ls`或`docker ps`命令来列出容器的基本信息。在输出的表格中,可以找到`COMMAND`列,其中包含了容器启动时使用的命令和参数。 3. 进入容器内部查看:可以通过`docker exec`命令进入容器内部,然后查看容器运行时的参数。可以使用`docker exec -it <容器ID> /bin/bash`命令来进入容器shell环境。在容器内部,可以使用`ps aux`命令查看当前运行的进程和对应的参数。 总之,可以通过`docker inspect`、`docker container ls`命令或进入容器内部查看进程获取Docker容器启动的参数。 ### 回答2: 要获取Docker容器启动的参数,可以使用docker inspect命令。该命令用于检查Docker对象的详细信息,包括容器、镜像、网络等。下面是获取容器启动参数的步骤: 1. 确保Docker已经安装并且正在运行。 2. 打开终端或命令提示符,然后执行以下命令: ``` docker ps ``` 这将列出所有正在运行的容器。请记住您要获取参数的容器的名称或ID。 3. 执行以下命令以获取容器的详细信息: ``` docker inspect <容器名称或ID> ``` 替换<容器名称或ID>为您要查看的容器的实际名称或ID。 4. 在输出结果中,您可以找到启动参数的信息。启动参数通常位于"Config"部分,它包含容器的配置信息。在此部分中,您可以找到以下字段: - "Cmd"字段显示了容器启动时所使用的命令。 - "Args"字段显示了传递给启动命令的参数。 通过查看这些字段,您可以获取容器启动的参数。 使用上述步骤,您可以轻松地获取Docker容器启动的参数信息。请确保您具备足够的权限来执行这些命令。 ### 回答3: 要获取Docker容器的启动参数,可以通过使用Docker命令行工具或Docker API来实现。 使用Docker命令行工具: 1. 执行命令 "docker ps" 列出当前正在运行的容器。 2. 根据容器的名称或ID选择要查看的容器。 3. 执行命令 "docker inspect <容器名称或ID>" 查看该容器的详细信息。 4. 在返回的JSON输出中,可以找到"Args"字段,其中包含了容器启动时的参数。 使用Docker API: 1. 使用适合自己编程语言的Docker客户端库连接到Docker守护进程。 2. 使用Docker API的"GET /containers/{id}/json"接口,其中{id}为容器ID。 3. 根据返回的JSON响应,可以找到"Args"字段,其中包含了容器启动时的参数。 无论使用哪种方式,获取到的启动参数是一个数组,包含了容器启动时传递的所有参数。这些参数可以是容器指定的命令、环境变量值,或者其他自定义参数。 总之,获取Docker容器启动的参数可以通过使用Docker命令行工具或Docker API来实现,通过查看容器的详细信息并获取"Args"字段的值来获得。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值