回答:
これを試して:
useradd {user} || echo "User already exists."
またはこれでさえ:
useradd {user} || true
少数のシステムしか持っていない限り、間違った質問をしていることになります。答えはuseraddをまったく実行しないことですが、代わりにこの作業をpuppetやchefなどの構成管理ソリューションに任せます。これにより、ユーザー定義を集中化して、ループを実行したり、システムを構成するためにrootユーザーでsshを使用したりするのを防ぐことができます。システムは常に既知の構成状態になります。
puppetのドキュメントは、http://docs.puppetlabs.comで入手できます。
パペットの例として:
user { "bob" :
password => "$1$yv3n066X$Vpb05Ac/fHTicNdT9T5vz1", # generated with `openssl passwd -1`
ensure => present, # ensure => absent to remove
managehome => true,
}
adduser
Debian / Ubuntuシステムでは一般的に推奨されます。