저는 아직 Linux 세계에 익숙하지 않습니다. 브라우저 인증을 위한 사용자 이름과 비밀번호가 포함된 파일이 있습니다. 예를 들어. :
user:ioeuwz5rf (Password generated with "openssl passwd ABCXYZ")
이제 이 비밀번호가 매주 또는 다른 시간에 자동으로 변경되기를 원합니다.
다음 내용이 포함된 Change.sh 파일을 사용해 보았습니다.
newpw="`openssl passwd ABCXYZ`"
sed -i 's/WhatToReplace/'$newpw'/g' test.txt
이렇게 하면 "WhatToReplace"라는 단어가 생성된 비밀번호로 대체됩니다. 하지만 자동으로 하고 싶습니다. 두 번째 부품을 교체할 수 있는 방법이 있습니까(사용자: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