일부 파일 교체

일부 파일 교체

저는 아직 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

관련 정보