bashスクリプトを介して別のユーザーパスワードを変更するのは簡単です- echo newpw | passwd usernameとbamを実行するだけで、完了です。しかし、bashを介してあなたのパスワードを変更するのはどうですか? echo newpw | passwd usernameは、新しいパスワードを入力する前に現在のパスワードの入力を求めるプロンプトが表示されるため、機能しません。
コメント
- "に
suまたはsudoを使用する必要がありましたか別のユーザー'のパスワード"の例を機能するように変更しますか? -
は別のユーザーに
passwd usernameを使用できます。passwdを実行すると(username)asroot古いパスワードを要求しません(私のUbuntu 19.10システムで)。 - ええ-私はやっていた
sudo。問題はまだ解決していません -
sudoにパスワードを入力する必要がありましたか?別のユーザーの'のパスワードを変更しますか? - では、現在のパスワードを入力してから、
{ sleep .1; echo OLDPASSWORD; for i in 1 2; do sleep .1; echo Trump2020! ; done; } | passwd。passwdがttyから読み取りたい場合は、... | script -c passwd /dev/nullを使用します。しかし、実際には'そうすべきではありません。 '達成しようとしていることを言ってください。
回答
現在のユーザーのパスワードを変更する場合は、次のようにする必要があります。
echo -e "MyOldPasswd\nMyNewPasswd\nMyNewPasswd" | passwd
回答
chpasswd を使用できます。
sudo chpasswd <<<"neubert:newpass"
回答
これは、中途半端な設定では機能しません。passwd user(新しいパスワードの入力を求めるプロンプトが表示されます)。自分のパスワードを変更するには、passwdを実行します。現在のパスワードを要求してから、新しいパスワード(および確認)を要求する必要があります。
任意のランダムユーザーを許可する他の人のパスワードを変更することは、巨大なセキュリティの問題です。