将可执行文件复制到任意数量的主机?

将可执行文件复制到任意数量的主机?

如何将可执行文件复制到任意数量的主机并使其在所有主机上运行?将此 .exe 发送到 20 台主机。

尝试将文件放入 /tmp 目录。建立实验室并尝试实践部署。

有任何想法吗?

答案1

这是我用来分发 shell 配置文件的脚本;它很容易适应。

#!/bin/sh
# copy selected files to other machines

FILES=".cshrc .login .profile"
HOSTS="kipling khan nag smith wolf"

h=${HOSTS}
if [ $1x != x ] ; then
   h=$1
fi

for i in $h ; do
    echo ${i}:
    for f in ${FILES}; do
        (cd ~; scp ${f} ${i}:.)
    done  
done

显然,您可以根据需要更改精确的来源和目的地。请注意,如果给定一个参数,则文件将发送到该指定主机。使用:

FILES=$(cat file-containing-list-of-files)

如果您想将该列表放在文件中,请将其与脚本分离。这同样适用于主机列表。

这些天,我可能会使用rsync而不是scp因为它会保留文件模式等。

相关内容