
/etc/passwd
및 를 사용하여 grep
다른 사람의 이름을 알아내는 방법은 무엇입니까 whoami
?
답변1
무슨 말인지 잘 모르겠지만 first name
, 사용자의 실제 이름과 성을 다섯 번째 필드에 저장하려면 다음과 같이 하면 됩니다.
grep "^$(whoami):" /etc/passwd | cut -d: -f5
정말로 이름만 원하는 경우:
grep "^$(whoami):" /etc/passwd | cut -d: -f5 | cut -d' ' -f1
답변2
getent passwd $(whoami) | cut -d: -f5 | cut -d, -f1 | cut '-d ' -f1
getent passwd
grep [pattern] /etc/passwd
시스템이 사용자 관리를 위해 LDAP 또는 NIS를 사용하도록 구성된 경우 getent는 LDAP 또는 NIS도 지원하므로 getent는 사용자 정보를 얻는 데 getent보다 더 나은 방법인 경우가 많습니다 .
cut -d: -f5
콜론으로 구분된 비밀번호 항목에서 5번째 필드를 가져옵니다. 이 필드는 전통적으로 gecos라고 불리며 사용자의 전체 이름뿐만 아니라 기타 콘텐츠도 포함합니다.
cut -d, -f1
그런 다음 쉼표로 구분된 gecos 필드의 첫 번째 하위 필드인 사용자의 전체 이름을 가져옵니다.
cut '-d ' -f1
이름의 첫 번째 단어는 사용자의 이름이어야 합니다.
마지막 단계에서는 실제로 이름의 첫 번째 단어만 사용하므로 실제로는 올바른 작업이 아닐 수 있습니다. 더 많은 관련 콘텐츠는 인기 기사에서 찾을 수 있습니다.프로그래머는 이름의 거짓말을 믿는다 - 패트릭 맥켄지(Patrick McKenzie)