팀, 우리는 여러 호스트의 비밀번호를 재설정하기 위해 90일마다 특정 활동을 수행합니다. 이제 내 쿼리는 다음과 같습니다.
내 비밀번호에 특수 문자가 포함되어 있습니다. 파일에서 기존 비밀번호를 찾아 동일한 호스트의 다른 txt 파일에 언급된 값으로 바꾸는 데 도움이 될 수 있는 미니 셸 스크립트가 있습니까?
예를 들어 oldfile.txt(파일의 어느 위치에나 이전 비밀번호 포함)
newfile.properties(oldfile.txt의 비밀번호를 대체할 새 비밀번호 포함)
각 비밀번호 문자열 값을 이스케이프하는 것이 매우 어려운 작업이라는 것을 알고 있습니다. 위에서 언급한 대로 새 파일에서 이전 파일로 전송할 수 있는 방법이 있습니까?
감사해요,
답변1
사용 chpasswd
. 하나 이상의 행이 포함된 표준 입력을 읽고 username:password
이에 따라 해당 사용자 이름의 비밀번호를 변경합니다.
비밀번호가 암호화되지 않은 경우 암호화됩니다.
chpasswd
-e
이 옵션은 비밀번호가 암호화된 경우에 유용합니다. (강력히 권장됩니다. 비밀번호를 일반 텍스트로 저장하는 것은 결코 좋은 생각이 아닙니다.)
sed
다른 awk
편리한 도구/스크립팅 언어를 사용하여 perl
사용자 이름과 비밀번호를 필요한 형식으로 출력할 수 있습니다.username:password
chpasswd
man chpasswd
자세한 내용은 참조하십시오 .