我一直在使用Expect几年,但我仍然不清楚send_user
是否与puts
相同。每当我想向用户发送信息性消息时,我想知道应该使用哪一个。在Expect的手册页中,似乎send_user
与puts
相同,但send_user
用于什么?
答案 0 :(得分:10)
除了新行之外,我刚刚发现的另一个区别是,如果你在Expect脚本中使用log_file
,那么通过send_user
发送的语句将会进入logfile,而使用puts
发送的语句则不会。如果您要自动化某些不在您的实际控制台上运行的Expect脚本,那么这会产生很大的不同。
答案 1 :(得分:8)
主要区别在于puts
会自动附加换行符
send_user
没有。在这方面,puts -nonewline
更加类似
到send_user
。
send_user
还“延续”期望send
的一些选项,例如-s
和-h
(查看期望手册页了解详情)。看到
http://99-bottles-of-beer.net/language-expect-249.html
使用-h
标志。
我无法谈论它们是如何在C级实施的。