首页 > 解决方案 > 如何在 ssh linux 中运行多个命令

问题描述

我试图将回显输出分配给 ssh 中的变量,但低于输出

file_temp='/tmp/diskIO_temp.log'
file_temp 包含

2 月 25 日 03:06:09 测试服务器 sde
2 月 26 日 03:06:09 测试服务器 sde

ssh -t -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null test@testserver "IFS=$'\n'; cat $file_temp | while read line; do  disk= `echo \$line`; echo \": disk : \$disk :\";done"

输出:

: disk :  :
: disk :  :

预期输出:

Feb 25 03:06:09 testserver sde
Feb 26 03:06:09 testserver sde

标签: linuxbashshellssh

解决方案


试试下面

ssh -t -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null test@testserver "IFS=$'\n'; file_temp=/tmp/diskIO_temp.log ; cat \$file_temp | while read line; do  disk=\$line ; echo \": disk : \$disk :\";done"

推荐阅读