![Unix 쉘 스크립트에서 자동으로 비밀번호를 묻는 메시지를 표시하는 방법은 무엇입니까? [복사]](https://linux55.com/image/80937/Unix%20%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%97%90%EC%84%9C%20%EC%9E%90%EB%8F%99%EC%9C%BC%EB%A1%9C%20%EB%B9%84%EB%B0%80%EB%B2%88%ED%98%B8%EB%A5%BC%20%EB%AC%BB%EB%8A%94%20%EB%A9%94%EC%8B%9C%EC%A7%80%EB%A5%BC%20%ED%91%9C%EC%8B%9C%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20%5B%EB%B3%B5%EC%82%AC%5D.png)
스크립트에 다음 줄이 있습니다. 실행하면 서버에서 파일을 복사하기 위한 비밀번호를 묻는 메시지가 나타납니다. 스크립트에서 비밀번호를 가져와야 합니다.
for i in cat forwarders
do scp -o StrictHostKeyChecking=no $filename $tarfile badgeid@$i:/tmp;
done
답변1
expect
명령을 확인하는 것이 좋습니다 . 비슷한 상황( ssh
)은 다음과 같습니다...
#!/usr/bin/expect
[...]
spawn ssh [lindex $argv 1]@root@[lindex $argv 0]@x.y.z.j -tt
expect "*?assword" {
send "$PASSWORD\r"
[...]