メッセージを表示せずにchpasswdを使用して新しいユーザーを作成する

メッセージを表示せずにchpasswdを使用して新しいユーザーを作成する

新しいユーザーを作成し、メッセージを表示せずにコマンドライン(テストパス)から直接パスワードを接続しようとしています。 Debian で次のエラーが発生します。

Enter new UNIX password: Retype new UNIX password: passwd: Authentication token manipulation error
passwd: password unchanged
Use of uninitialized value $answer in chop at /usr/sbin/adduser line 556.
Try again? [y/N] Use of uninitialized value $answer in pattern match (m//) at /usr/sbin/adduser line 557.

私はこうする:

adduser --gecos "" plmadmin
echo testpass:testpass | chpasswd
adduser plmadmin sudo

ベストアンサー1

この小さなスクリプトを使用して2つのパラメータを指定できます。

#!/usr/bin/env bash

if (($# < 2));
  then
    printf 'Please provide the username and password\n'; exit 1
  else
    adduser "$1"
    printf "$1:%s" "$2" | chpasswd
  fi

1) addUsers(拡張子なし)などのファイルにスクリプトを保存します。

2) chmod u+x ユーザーを追加

3) ./addUsers ユーザー名とパスワード

おすすめ記事