Мне нужно прочитать переменную из удаленного файла через SSH и сравнить ее. Но я получаю переменную в неправильном формате. как это сделать правильно?ssh bash получить переменную из удаленного файла
#!/bin/bash
pass='dpassspass'
user='[email protected]'
IP="10.2.1.41"
path=/sys/variable/serv
#not work## No such file or directory# write=$(sshpass -p $ovhpass ssh -t $user echo "$IP" > $path)
sshpass -p $pass ssh -t $user << EOF
echo "$IP" > $path
EOF
my_var=$(sshpass -p $pass ssh -t $user "cd /sys_ovh; ./serv.bash")
echo mystart-"$my_var"-myend
read=$(sshpass -p $pass ssh -t $user cat $path)
echo start-"$read"-end
echo start-"$IP"-end
if [ "$read" == "$IP" ]; then
echo "run"
fi
выход:
Connection to 10.10.19.18 closed.
-myendt-10.2.1.41
Connection to 10.10.19.18 closed.
-endt-10.2.1.41
start-10.2.1.41-end
Где я допустил ошибку? Как взять данные из SSH?
I change to read = $ (sshpass -p $ pass ssh -t $ user cat $ path16 | tr -d "\ r"), и все работает нормально. Спасибо! –