在我的脚本部分,我需要为主机创建ssh并删除数组的元素。在我目前的数组元素的代码中,我需要使用ssh来托管,这需要时间。 我想一次让ssh到主机,然后删除数组的所有元素。 如何从性能的角度改进我的下面的代码?
for x in $Array
do
echo "Value of array are : $x"
ssh user@abc.host.com "rm -rf $x"
done
答案 0 :(得分:1)
为什么要循环?使用*
作为下标给出了数组的所有元素。
ssh user@example.com "rm -rf ${Array[*]}"
请注意,如果文件名包含空格,则任何一种方式(带或不带循环)都会中断。
答案 1 :(得分:0)
您必须在本地文件中输入命令,然后上传文件,最后运行脚本。这是怎么回事:
echo > rmscript.sh
for x in $Array
do
echo "Value of array are : $x"
echo "rm -rf $x" >> rmscript.sh
done
#upload
scp rmscript.sh user@abc.host.com:~
#run script
ssh user@abc.host.com "sh ~/rmscript.sh"