expect

プロンプトを表示する前に、スクリプトがパスワードを送信すると予想します。
expect

プロンプトを表示する前に、スクリプトがパスワードを送信すると予想します。

expectリモートサーバーでSSHを自動化するための小さなスクリプトを作成しました。しかし、時々私のexpectスクリプトがうまくいかない場合があります。実際には、パスワードプロンプトの前にパスワードを送信します。これは私のスクリプトです。 #!/usr/bin/expect -f set password xyzzys # now connect using ssh set host [lindex $argv 0] spawn ssh vivek.gagrani@$host expect "*?assword:*" send -- "$password...

Admin

SSH経由でPS1プロンプトを設定する正しい方法
expect

SSH経由でPS1プロンプトを設定する正しい方法

リモートコンピュータでPS1プロンプトを動的に設定しようとしています。リモートシステムにSSHで接続するとき、そのリモートシステムのプロンプトに設定される値も送信するというアイデアです。リモートシステムへのSSHログインを自動化するExpectスクリプトはすでにあります。これで、自動ssh操作を実行し、sshを介して渡された値にPS1プロンプトを設定するようにスクリプトを変更しようとしています。以下は私のスクリプトです #!/usr/bin/expect -f set password Mayy@029Mayy@029 # now connect using...

Admin

アプリケーションがシャットダウンコマンドを実行した後に中断されると予想されます。
expect

アプリケーションがシャットダウンコマンドを実行した後に中断されると予想されます。

通常、インタラクティブモードでを入力すると表示され、exitbashDisconnected from Virtual Machine 'pick0:LINUX'シェルプロンプトに戻ります。 Disconnected from Virtual Machine 'pick0:LINUX'私の予想されるスクリプトを使用すると、コマンドの実行後に中断されましたexit。これは私の予想されるスクリプトです。 #!/usr/bin/expect -f set timeout -1 spawn /usr/bin/d3 -0 expect "Options: F)ile...

Admin

期待:echoを使用して一度に複数行の文字列を印刷します。
expect

期待:echoを使用して一度に複数行の文字列を印刷します。

私のコードには、次の予想されるコードセクションがあります。 set command "echo $output" spawn bash expect "$ " send "$command\r" expect "$command\r\n" outputから得られた複数行の文字列はどこにありますか$expect_out(buffer)? 私は出力を取得します: $ echo this this $ is is: command not found $ a multiline a: command not found $string Bashで複数行の...

Admin

アプリケーションが読み取りを待っています(TTY経由)
expect

アプリケーションが読み取りを待っています(TTY経由)

私はLinuxのコマンドラインアプリケーションと対話する期待スタイルプログラムを書いています。 PTYのもう一方の端にあるアプリケーションがタスクをread実行しようとしたときに私のプログラムで知ることができる方法はありますか? 理想的には、PTY(またはプロセスグループ)の反対側でどのプロセスが実行されているかを知らなくても可能です。 ptmxファイル記述子の状態をポーリングすることは機能しません。私はいつも有能な書き込みがカーネルによって内部的にバッファリングされていても、ここに書き込みます。 ...

Admin

Dockerfileはスクリプトが早く終了すると予想されます。
expect

Dockerfileはスクリプトが早く終了すると予想されます。

expectDockerfileで実行する必要があるスクリプトがあります。ただし、すべての入力が送信された後、スクリプトは終了します。面白いのは、docker buildそれが成功だということです。これは私のMREです: ドッカーファイル FROM ubuntu:20.04 RUN apt -y update && \ apt -y install expect COPY script.sh expect.exp /root/ RUN cd /root && \ ./expect.exp 期待.exp #...

Admin

複雑なシェルインタフェースがある場合は、Expectスクリプトをどのように閉じますか?
expect

複雑なシェルインタフェースがある場合は、Expectスクリプトをどのように閉じますか?

私は走っていますzsh。tmuxプレスト楽章、デフォルトの予想スクリプトが正しく終了しません。 set timeout -1 spawn $env(SHELL) expect -regex ".*" send "echo 'foo'\r" expect -regex ".*foo.*\r" send "^D" expect eof 結果は期待どおりに出力され、スクリプトは終了します。ただし、キーボードをfoo押すまで公開されたプロンプトは削除されます。CTRL-Cこの時点で、aが%印刷され、次の行が表示されます。 ❯ ./modified-autoexp...

Admin

Expectモジュールを使用して、タスクにansible_python_interpreterを追加します。 make_userを使用してコマンドを取得することはできません。
expect

Expectモジュールを使用して、タスクにansible_python_interpreterを追加します。 make_userを使用してコマンドを取得することはできません。

私はCentOS7即時の会話が行われるべきインベントリクエストを作成していますが、これがexpectandibleモジュールに最適な候補だと思います。 - name: setup some command become: yes become_user: user1 expect: command: some_command responses: 'Do you want to continue? [yes/no]': 'y' 上記の作業ではpexpectインベントリにパッケージが必要で、利用可能なバージョン2.3 ...

Admin

systemd デバイスで Expect を実行すると、sh 構文エラーが発生します。
expect

systemd デバイスで Expect を実行すると、sh 構文エラーが発生します。

systemdexpectVPNクライアントにログイン資格情報を提供するスクリプトを呼び出すセルを使用して、LinuxコンピュータからVPN(SonicWall NetExtender)に接続するプロセスを自動化しようとしています。ファイルは次のようになります。 netextender.service [Unit] Description=SonicWall NetExtender VPN PartOf=systemd-networkd.service systemd-resolved.service [Service] Type=simple Envir...

Admin

IF文を使用してExpectで分岐を作成する
expect

IF文を使用してExpectで分岐を作成する

過度のプロンプトを処理するためのスクリプトを作成していますexpect。 bash私が使用するスクリプトは、次の2つの順序のいずれかに従うことができます。 prompt1 -> prompt2 -> prompt3 prompt1 -> prompt3 つまり、時には理解できないこともありますprompt2。だから私の質問は次のとおりです。expect確認しprompt2て存在する場合は、aを送信してy続行するスクリプトをどのように作成できますか?それ以外の場合は続きます。 編集:@glennのコメントと回答に感謝します!後で他の人に役...

Admin

SFTPサーバーにEXPECTとPUTを使用するシェルスクリプト
expect

SFTPサーバーにEXPECTとPUTを使用するシェルスクリプト

シェルスクリプトを作成し、SFTPサーバーにバックアップファイルを送信しようとしています。 remotepath=/backup/ expect -c " spawn sftp [email protected] expect "password:" send "password123\r" expect "sftp>" send "put /back_up/bkp_2022.tar.gz $remotepath\r" expect "sftp>" send "bye\r" " これはファイルを転送せずに取得した出力です。単に「?se...

Admin

パスワード入力をバイパスすることが予想される問題に直面したActiveDirectory結合用のBashスクリプト
expect

パスワード入力をバイパスすることが予想される問題に直面したActiveDirectory結合用のBashスクリプト

この内容を先に説明します。悪い習慣ただし、とにかく、仮想マシンテンプレートのvRAに存在するスクリプトにsvcアカウントの資格情報を保存するように求められます。私にとってはオプションではありませんが、ユースケースのためユーザー入力はできません。現在の見積もりを使用してsvcアカウントのパスワードを送信しようとしています。プロンプトが表示され、スクリプトはエラーなしで完了しますが、ドメインに参加しません。資格情報セットを変数として送信するかどうかはわかりません。 #!/bin/sh yum -y install sssd realmd oddjob oddj...

Admin

値を入力した後、スクリプトが続くと予想されます。
expect

値を入力した後、スクリプトが続くと予想されます。

私は次のような予想されるスクリプトを書いた。 #!/usr/bin/expect -f set timeout 10 spawn zypper in --no-recommends pdns expect { -re {^.* Solution (\d): (?:break pdns)} { set solution "$expect_out(1,string)" exp_continue } "Choose from above solutions by number or cancel" { puts "$solutio...

Admin