require 'pty'
require 'expect'
PTY.spawn("su legend") do |r_f,w_f,pid|
r_f.expect(/^Password:.*/) do
w_f.print "123\n"
end
r_f.expect('$') do
w_f.print "cd ~\n"
end
r_f.expect('$') do
w_f.print "touch test\n"
end
begin
w_f.print "quit\n"
rescue
end
end
我这断代码的目的很简单,切换用户后,创建一个文件,我执行的时候报错:
俺们新手,不太熟悉,请教下大虾该咋整啊!!!