何十もの組み込み Linux ユニットでテスト スクリプトを実行したいと考えています。認証クレデンシャルの製造では、すべて同じです。
テストは約 1 時間ですが、各ユニットを継続的に (週末など) ループさせ、現在のテストの反復を (ユニットごとに) レポートしてもらいたいと考えています。
私はexpectが進むべき道かもしれないと考えています(それは確かにsshログインに役立ちます)が、オンラインドキュメントは...ええと...単純な演習のように見えるものには少し分散しすぎています。
spawn
埋め込みテストを並行して行う方法を決定しようとしているところに行き詰まっています。BASH では、&
オペレーターを使用してプロセスをバックグラウンドに置きますが、認証に入るのは難しいです。
Expect を使用するか、BASH スクリプトを使用する必要がありますか?
私がしたこと:
スクリプトを使用しexpect
て、DUT に SSH 認証ファイルを配置しました。DUTにはRAMファイルシステムしかないので、これは残りのbashスクリプトが実行される前です。次に、単純な BASH for ループが for ループ内で ssh コマンドを発行して、テストを実行し、セッションをバックグラウンド スレッドに置きます。通信先:
for i in <IP devices to test> ;
do
ssh user@$i "echo - \"IP Address: $i :\" ; test-script" &
done
出来上がり!