#!/bin/bash hostname=$1 expect <<'EOF' set target=$hostname spawn ssh lucas@$target set count 0 expect { timeout {puts "timeout happened"} eof {puts "eof received"} "$ " {send "sudo /sbin/shutdown -P 0i\r";exp_continue} "Permission denied" {incr count;exp_continue} } set results $expect_out(buffer) if {[regexp -nocase "Shutdown scheduled" $results]} { puts "[index $argv 0] has been shut down" } else { puts "Failed" } EOF