ssh에서 일부 명령 (예 : pwd)을 실행하고 싶습니다.일부 파이프 후에 linux expect + ssh 명령 출력이 누락됩니다.
나는 이것을 사용하여 포장하기를 기대하며, "e"명령이되므로 잘 작동합니다.
./e jump
그러나 출력은 파이프 후 실종됐다가, **
여기cat list.txt | xargs -I xx ./e xx
는 전자 스크립트
[[email protected] tmp]# cat ./e
expect -d -c '
spawn ssh [email protected]'$1' pwd
expect "*assword:" {
send "r41\r"
sleep 1
}
sleep 3
'
이다 "PWD"명령의 결과를 표시 할 수는 없지만 파이프 후 SSH 괜찮습니다, 더 많은 파이프를 추가하기 위해 에코 xx ** **
echo xx | ssh [email protected] pwd
'echo xx' 값이'expect' 프로그램의 입력으로 주어지기를 기대합니까? 미안, 나는 그것을 이해할 수 없었다. ssh를 통해 원격지에 로그인하고 있습니다. 'echo xx'의 필요성은 무엇입니까? – Dinesh
배관을위한 에코 xx. 목적을 표시하기 위해 다시 편집하십시오. – user3073309
user3073309, 내 답변의 작동 여부 – Dinesh