すべてのユーザーとそのUIDをリストするにはどうすればよいですか?ターミナルからこれをしたいです。
/home
フォルダーを持つすべてのユーザーをリストします。
awk -F: '/\/home/ {printf "%s:%s\n",$1,$3}' /etc/passwd
またはUID >= 1000
を持つすべてのユーザー:
awk -F: '($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd
組み合わせ
awk -F: '/\/home/ && ($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd
またはすべてのエントリに対して
awk -F: '{printf "%s:%s\n",$1,$3}' /etc/passwd
詳細 こちら
cut
を使用するだけで簡単に見つけることができます。
cut -d: -f1,3 /etc/passwd
-d:
は、cut
の区切り文字を:
に設定します
-f1,3
は、:
ファイルから/etc/passwd
で区切られたフィールド1と3のみを抽出します
man cut
をチェックして、より多くのアイデアを得てください。
例:
$ cut -d: -f1,3 /etc/passwd
root:0
daemon:1
bin:2
sys:3
sync:4
games:5
......
ldap
が構成されている場合、ldap
ユーザーを出力に含めるには:
getent passwd | cut -d: -f1,3
UIDとユーザー名を一覧表示しようとしているため、以下のコマンドはSolarisで最適に機能します。彼らは2つのawkを持っています
awk -F: '($ 3> = 1000){printf "%s:%s"、$ 1、$ 3}'/etc/passwd
最も簡単な方法は、サーバー上にwebminを配置し、[システム]> [ユーザーとグループ]に移動することです。そこには、すべてのユーザー名とグループ、uid、ホームディレクトリなどのリストがあります。