通过跳板机复制文件到开发机

!/bin/bash

传递给脚本或函数的参数个数

当前脚本的文件名

if [ # -lt 2 ]; then echo "Usage:0 "
exit 1
fi

传递给脚本或函数的参数

src=1 echosrc

dest=2 echodest

basename 去掉文件名和目录命令

fname=basename $src
echo $fname

把文件传到跳板机

if [ -d 1 ];then scp -P 8989989 -rsrc [email protected]:/home/sxx/tmp/
echo "scp -r /home/sxx/tmp/fname [email protected]:dest; rm -rf /home/sxx/tmp/*" > /Users/uoui/work/bin/cp_agent
elif [ -f 1 ];then scp -P 8989989src [email protected]:/home/sxx/tmp/

生成一个可以从跳板机拷贝文件到23.78,并从23.78拷贝到目标机的脚本

echo "scp /home/sxx/tmp/fname [email protected]:dest; rm -rf /home/sxx/tmp/*" > /Users/uoui/work/bin/cp_agent
fi

将这个脚本拷贝到跳板机

scp -P 8989989 /Users/uoui/work/bin/cp_agent [email protected]:/home/sxx/tmp/
rm -f /Users/uoui/work/bin/cp_agent

在跳板机上执行拷贝脚本,结果是将源文件拷贝到目标机上

ssh -p 8989989 [email protected] "sh /home/sxx/tmp/cp_agent; rm -rf /home/sxx/tmp/*"

你可能感兴趣的:(通过跳板机复制文件到开发机)