web-dev-qa-db-ja.com

bashスクリプトにパスワードを入力します

さまざまなファイルを暗号化するbashスクリプトを持っています。
このスクリプトは、(暗号化するために)各ファイルのパスワードを入力するように要求します。

スクリプトに必要な情報をスクリプトの引数として指定する方法はありますか?ファイルごとに毎回手動で入力する必要はありませんか?

私が試した:

  • cat "input" | ./Script.sh
  • cat "input.txt" | ./Script.sh
  • echo "input" | ./Script.sh
  • printf 'Word1\nword2\nword3\n' | ./script

編集:Volker Siegelの答えでそれを解決しました:

  1. インストール期待値:Sudo apt-get install expect
  2. Autoexpectを実行します:autoexpect -f file-to-save-automation script-to-automate
  3. 生成されたファイルを実行します:./file-to-save-automation
1
dvg

プログラムexpectが必要です。あなたがする必要があるのはそれの主な用途です。
autoexpectを使用して、プログラムの使用の記録を生成します。

記録は(tcl)のスクリプトであり、パスワードの入力を含め、スクリプトを実行できます。

完全に機能しない場合は、生成されたスクリプトを編集できます。ラングはもはや広く使われていませんが、かなりシンプルです。必要なもののコード例を見てください。

ケースの使用例を簡単に見つけることができます。

1
Volker Siegel