msfconsoleに常に「はいまたはいいえと答えてください」と表示されるのはなぜですか?

msfconsoleに常に「はいまたはいいえと答えてください」と表示されるのはなぜですか?

これは私のせいです。

ご覧のとおり、メタスプロイトを設置してcd入りました。/opt/metasploit-framework/bin./msfconsole

プロンプトが示すように、と入力しようとしましたが失敗しましたyes...まだプロンプトが表示され、... +と入力してブロックするanswer yes or noまで停止しません。ctrlC

正しくするにはどうすればよいですか? (オペレーティングシステムはMac-OSXです)

答え1

スクリプトはスクリプトmsfconsoleです。bash組み込みオプションには、bashユーザーにプロンプ​​トを表示するオプションがあります。-pread

ただし、no coprocessエラーメッセージを印刷する方法のオプションzshもありますが、意味はまったく異なります。これは、スクリプトが無効なシェルによって実行され、関数が失敗して関数がユーザーから正しい入力を受け取らないと文句を言うことを意味します。read-preadcheck_path

したがって、この問題を解決するには、msfconsoleシステムの適切なシェルインタプリタ(おそらく)を指す正しい行が最上部にあることを確認してください。#!bash

または、明示的なインタプリタを使用してスクリプトを実行します。

bash ./msfconsole

答え2

nano .zshrc

これを追加してみてください

export PATH=/opt/metasploit-framework/bin:$PATH

次に、新しいウィンドウを実行します。

msfconsole

私はこの方法を試した。

私はこの方法を試した。

関連情報