シェルスクリプトでユーザパスワードを変更する

f:id:fclout:20150509153236j:plain
通常OSユーザのパスワードを変更する場合は

passwd <ユーザ名>
←パスワード入力
←パスワード入力(確認)

で変更できるが、シェルスクリプトではこれを実行するのは難しい。(と思う)

本来はあまり望ましいことではないが、
シェルスクリプトで標準入力なしでパスワードの変更がしたい場合は
下記のように実行する。

echo "<ユーザ名>:<パスワード>" > <一時ファイル名>
chpasswd < <一時ファイル名>

使う機会は少なそうだけど、
Oracle製品のインストール作業を機会化したい場合は使えそう。