Solaris 5.10에서 작업 중이며 /etc/default/passwd
을 구문 분석하고 최소 암호 길이를 확인하고 싶습니다. 다음은 내가 사용 스크립트입니다 :solaris에서 awk 사용
if awk -v x=1 '$1 == "PASSLENGTH" && $2 == "6" {x=0} END{exit x}' /etc/default/passwd
then
echo "Control Area: User Identity Management; Ensure that minimum password length is set ; compliant" >> /etc/chef/report.txt
else
echo "Control Area: User Identity Management; Ensure that minimum password length is set ; Non compliant" >> /etc/chef/report.txt
fi
최소 PASSLENGTH
가 6
같은 경우, 내 report.txt
파일로 준수 에코. 하지만 문제는 내 코드가 PASSLENGTH
변수의 값이 6
인 경우에도 /etc/default/passwd
에있는 if 블록 안에 들어 가지 않습니다.
왜 awk인가? python에서 이것을 쓴다면 더 많은 도움을 얻을 수 있습니다. – bmargulies
awk 명령을 독자적으로 실행하고 결과를 확인하십시오. 두 인수가 일치하지 않을 가능성이 있습니다. –
Solaris! = linux. 당신은 리눅스 태그를 제거해야합니다. – Kent