
私はまだLinuxの世界に慣れていません。ブラウザ認証用のユーザー名とパスワードを含むファイルがあります。例えば。 :
user:ioeuwz5rf (Password generated with "openssl passwd ABCXYZ")
今度はこのパスワードを毎週または他の時間に自動的に変更したいと思います。
次の内容を含む Change.sh ファイルを試してみました。
newpw="`openssl passwd ABCXYZ`"
sed -i 's/WhatToReplace/'$newpw'/g' test.txt
これにより、「WhatToReplace」という単語が生成されたパスワードに置き換えられます。でも自動的にやりたいです。 2番目の部品を交換する方法はありますか(ユーザー:ioeuwz5rf)任意のパスワードで。
ユーザーごとに新しいランダムなパスワードを作成したい場合、メールを生成できるファイル(newpw.txtなど)に保存する必要があります。
答え1
ファイル内のすべての行を置き換える代わりに、古いnewpw.txt
ファイルのユーザー名を繰り返して新しいファイルを作成します。たとえば、次のようになります。
cut -d: -f1 pw.txt | while read -r user; do
echo "$user:$(openssl passwd ABCXYZ)"
done > newpw.txt
mv newpw.txt pw.txt