给我输出一个shell脚本,要求对已经推送脚本的主机清单进行统计,已知脚本路径
时间: 2023-07-17 08:04:14 浏览: 32
可以为您提供一个简单的shell脚本示例,以对已推送脚本的主机清单进行统计。假设脚本路径是`/path/to/script.sh`,您可以使用以下脚本:
```bash
#!/bin/bash
# 主机清单
hosts=("host1" "host2" "host3")
# 统计变量
successful=0
failed=0
# 循环遍历主机清单
for host in "${hosts[@]}"; do
# 执行脚本并检查返回值
ssh "$host" "/path/to/script.sh"
if [ $? -eq 0 ]; then
((successful++))
else
((failed++))
fi
done
# 输出统计结果
echo "成功推送脚本的主机数: $successful"
echo "推送脚本失败的主机数: $failed"
```
请注意,此脚本假设您已经设置了无需密码的SSH登录,并在`hosts`数组中提供了要执行脚本的主机列表。您可以根据实际情况进行修改和扩展。
相关问题
输出一个shell脚本,要求对一个hosts清单的主机的指定文件夹的mtime时间进行输出
以下是一个示例的shell脚本,用于输出主机清单中每个主机指定文件夹的mtime时间:
```bash
#!/bin/bash
# 主机清单
hosts=("host1" "host2" "host3")
# 文件夹路径
folder="/path/to/folder"
# 遍历主机清单
for host in "${hosts[@]}"; do
echo "主机 $host:"
# 获取文件夹的mtime时间
mtime=$(ssh "$host" "stat -c %y $folder")
if [ $? -eq 0 ]; then
echo "文件夹 $folder 的mtime时间: $mtime"
else
echo "获取mtime时间失败"
fi
echo ""
done
```
请注意,此脚本假设您已经设置了无需密码的SSH登录,并在`hosts`数组中提供了要查询的主机列表。您需要将`/path/to/folder`替换为实际的文件夹路径。脚本将远程登录每个主机,并使用`stat`命令获取指定文件夹的mtime时间。如果成功获取到mtime时间,将输出到控制台;如果获取失败,将输出错误信息。您可以根据实际情况进行修改和扩展。
输出一个shell脚本,要求对批量主机的指定文件夹目录进行比对,如果有修改,输出最新修改时间。
以下是一个示例的shell脚本,用于对批量主机的指定文件夹目录进行比对,并输出新修改时间:
```bash
#!/bin/bash
# 主机列表
hosts=("host1" "host2" "host3")
# 文件夹路径
folder="/path/to/folder"
# 遍历主机列表
for host in "${hosts[@]}"; do
echo "主机 $host:"
# 获取文件夹最新修改时间
last_modified=$(ssh "$host" "stat -c %y $folder")
if [ $? -eq 0 ]; then
echo "最新修改时间: $last_modified"
else
echo "获取最新修改时间失败"
fi
echo ""
done
```
请注意,此脚本假设您已经设置了无需密码的SSH登录,并在`hosts`数组中提供了要比对的主机列表。您需要将`/path/to/folder`替换为实际的文件夹路径。脚本将远程登录每个主机,并使用`stat`命令获取指定文件夹的最新修改时间。如果成功获取到最新修改时间,将输出到控制台;如果获取失败,将输出错误信息。您可以根据实际情况进行修改和扩展。