web-dev-qa-db-ja.com

Expectの「send_user」と「puts」の違いはありますか?

私はExpectを数年間使用していますが、それでもsend_userputsと同じであるかどうかはわかりません。ユーザーに有益なメッセージを送りたいと思うたびに、どちらを使うべきか疑問に思います。 Expectのマニュアルページから、send_userputsと同じように見えますが、send_userは何に使用されますか?

20
pynexj

改行以外の2つの違いは、Expectスクリプトでlog_fileを使用している場合、send_userを介して送信されたステートメントはログファイルに記録されるのに対し、送信されたステートメントはログファイルに記録されることです。 putsを使用しないでください。実際のコンソールで実行されていないいくつかのExpectスクリプトを自動化する場合、それは大きな違いを生む可能性があります。

10
xolotl

主な違いは、putsは自動的に改行を追加し、send_userは追加しないことです。この点で、puts -nonewlinesend_userに類似しています。

send_userは、-s-hなどのexpectのsendからいくつかのオプションも「継承」します(詳細については、expectのマニュアルページを確認してください)。 -hフラグの使用法については、 http://99-bottles-of-beer.net/language-expect-249.html を参照してください。

経営幹部レベルでどのように実装されているかについてはお話しできません。

8
glenn jackman