2013-11-28 2 views

답변

29
awk -F: '$0=$1 " uid="$3' /etc/passwd 

awk는이 경우에 더 쉽습니다. :

그래서 당신이 원하는대로

-F는 1, 3 colums입니다 필드 구분자를 정의합니다. 출력 형식을 제공하려면 $0을 빌드하십시오.

이것은 매우 기본적인 awk의 사용법입니다. 이런 종류의 문제에 자주 직면 한 경우 자습서를 읽는 것이 좋습니다.

이번에 물고기가 생겼습니다. 내가 너라면 낚시하는 법에 대한 연구를 할 것입니다.

+3

물고기를 배울 제안을위한 +1 – Will

8

cut이에 대한 좋은 :

cut -d: -f1 /etc/passwd 

이 "이 /etc/passwd 파일의 각 행의 첫 번째 필드를 제외하고 분리 문자, 모든으로 :를 사용하여, 잘라 내기"를 의미한다. 내가 옵션을 가장 생각

2

그과 같습니다
grep "/bin/bash" /etc/passwd | cut -d':' -f1

+1

이 답변은 내가 찾고있는 것입니다. 그것은 GUI를 사용하여 로그인 할 수있는 사용자를 제공합니다 :) –

0
awk -F':' '$3>999 {print $1 " uid: " $3}' /etc/passwd | column -t | grep -v nobody 

당신에게 모든 일반 사용자를 제공합니다 (UID> = 1000) 깔끔하게 사용자 ID를 포함하여 명령했다.

관련 문제