1

/etc/passwd同じグループのユーザーの回線を切りたいです。

/etc/passwdグループの uid が 1009 の場合、このグループのすべての行が必要です

user1:x:1001:1009::/home/user1:/bin/bash
user2:x:1002:1009::/home/user2:/bin/bash
user3:x:1003:1009::/home/user3:/bin/bash

試してみcat /etc/passwd | grep 1009ましたが、番号 1009 は uid または他の番号でもある可能性があるため、機能しません。

4

2 に答える 2

5

awkフィールドセパレーターを使用して、4 番目のフィールドを必要な uid と比較するために使用します:

$ awk -F: '$4==1009' /etc/passwd
user1:x:1001:1009::/home/user1:/bin/bash
user2:x:1002:1009::/home/user2:/bin/bash
user3:x:1003:1009::/home/user3:/bin/bash
于 2013-01-16T15:16:07.793 に答える
0
cat /etc/passwd | egrep '([^:]+:){3}1009:'

「3 つのロット (いくつかの非コロン、次にコロン)、続いて 1009、そして別のコロン。」

(グループ 10090 を省略するには、末尾のコロンが必要です。)

于 2013-01-16T15:12:54.290 に答える