2014-04-21 3 views

답변

2

왜 사용해 보시겠습니까?

암호가있는 사용자 목록입니다.
다른 사용자는 /etc/shadow 파일의 name: 뒤에 * 또는 !이 있습니다.

+0

즉, 출력에 나열되지 않은 사용자가있는 경우입니다. 그러므로 그것은 암호와 관련이 없습니다, 맞습니까? – Ace

+0

맞습니다. 나열되지 않은 사용자는 서비스를 실행하는 데 사용됩니다. – SzG

+0

감사합니다. – Ace

1

인쇄의/etc/shadow 파일 (첫 번째 열)

1

이 명령의 사용자는/etc/shadow 파일에서 사용자 이름 목록을 추출합니다./etc/shadow 파일은 사용자의 암호화 된 암호를 시스템에 저장하고 몇 가지 추가 속성을 저장합니다.

명령의 첫 번째 부분 인 egrep은 암호가 설정되지 않은 사용자를 걸러냅니다. 따라서 특정 서비스에 사용되는 사용자 계정이됩니다.

awk를 인쇄 egrep 명령 출력의 첫 번째 열의 두 번째 부분 - -F 의해 지정된 열이 : 문자에 의해 분리된다. 출력의 첫 번째 열은 사용자 이름을 포함합니다.

1

설명 :

egrep - Search the pattern with using regular expression 
    -v  - Invert of matching pattern that mean matched pattern will not executed 
    '.*:\*|:\!'- That mean Any character and colon occur then the exact * found not 
       any charater of star (For example User only password maintain 
       other than password field contain * . 
    awk -F: - Set the delimiter is ":" 
'{print $1}' - print the first column . 

암호 필드 행이 다른 인쇄 것 비밀번호를 암호화 포함 * 일치하지 않습니다 제기 암호에서 발생합니다.

1

는 전혀 필요가 awk이 모든 것을 할 수 있습니다, 여기 egrep을 사용하지 할 수 있습니다

awk -F: '$2!~/[*!]/ {print $1}' /etc/shadow 

그리고 다른 점 밖으로,이 목록의 두 번째 필드에 *!을 포함하지 않는 모든 사용자.
이렇게하면 모든 사용자에게 암호가 제공됩니다.