要求に応じてパスワードをアプリケーションにパイプ

要求に応じてパスワードをアプリケーションにパイプ

Bashスクリプトでは、次の作業を実行する必要があります。

curl --digest --user schmijos https://bitbucket.org/u/p/get/tip.zip -o tip.zip

パスワードを自動的に送信する方法カールそれを要求するときか。どのログファイルでもパスワードを見たくないからに慣れる以下を行います。

curl --digest --user schmijos:$password https://bitbucket.org/u/p/get/tip.zip -o tip.zip

答え1

使用empty:

パスワードを安全に保存してください(そう言うと…)

$ echo password > pwd-file

プロセスを開始しますempty。 (-L log実際の状況では省略します。)

$ empty -f -i fifo1 -o fifo2 -L log curl -u user http://example.com

pwd-fileemptyプロセスが処理する入力パイプの内容をstdinおよびに送信します/dev/tty

$ empty -s -c -o fifo1 < pwd-file

疑似端末では、次のことが発生します。

$ cat log
<<<Enter host password for user 'user':>>>password
<<<

答え2

カールはパスワードを読むことができます~/.netrc。次の行を追加します~/.netrc

machine bitbucket.org login schmijos password swordfish

そして走る

curl --netrc --digest --user schmijos https://bitbucket.org/u/p/get/tip.zip -o tip

関連情報