man chpasswd
から :
「このコマンドは、多数のアカウントが一度に作成される大規模なシステム環境で使用するためのものです。」
passwd
(私の経験では) 通常、1 人のユーザーに対してインタラクティブに使用されます。
両方のマニュアル ページを参照してください:
<ブロック引用>名前
- chpasswd - バッチ モードでパスワードを更新
あらすじ
chpasswd
[オプション]
説明
chpasswd
コマンドは、標準入力からユーザー名とパスワードのペアのリストを読み取り、この情報を使用して既存のユーザーのグループを更新します。各行の形式は次のとおりです。
ユーザー名:パスワード
<ブロック引用>
名前
- passwd - ユーザーのパスワードを変更
あらすじ
passwd
[オプション] [ログイン]
説明
passwd
コマンドは、ユーザー アカウントのパスワードを変更します。通常のユーザーは自分のアカウントのパスワードのみを変更できますが、スーパーユーザーは任意のアカウントのパスワードを変更できます。 passwd
また、アカウントまたは関連付けられたパスワードの有効期間も変更されます。
一言で言えば:
-
passwd
isatty(0)
を使用して、STDIN (ファイル記述子 0) が端末に接続されているかどうかを確認します .そうでない場合、passwd
つまり、passwd
でしか作業できません インタラクティブに -
chpasswd
一方、STDINから(ユーザー名と)パスワードを読み取るように設計されており、バッチモードと呼ばれます(一度に複数のユーザー資格情報を作成/更新します)。user_name:password
の形式で指定された STDIN からパスワード (デフォルトではクリア テキスト) とユーザー名を読み取ります。 、エントリを改行で区切る