我想从 /etc/passwd 文件中读取用户。我的 /etc/passwd 文件是
/etc/passwd
root:eRYFFjZ2./oo:0:0:root:/:/bin/bash
nobody:*:99:99:Nobody:/:
ftp:*:14:50:FTP User:/:/bin/false
#guest
guest:/QP8Q2QieMWi4:500:500:Guest:/:/bin/bash
gst1:x:1002:1003:,,,:/home/gst1:/bin/bash
#gend
#admin
ad1:x:1003:1004:,,,:/home/adm1:/bin/bash
ad2:x:1004:1005:,,,:/home/adm2:/bin/bash
#adend
我想使用脚本从这个文件中获取用户。首先读取来宾和 gst1。然后是 ad1,ad2。我试着用
awk'#guest/{flag-1;next}/#gend/{flag=0}flag' /etc/passwd
awk'#admin/{flag-1;next}/#adend/{flag=0}flag' /etc/passwd
这给了我两行
guest:/QP8Q2QieMWi4:500:500:Guest:/:/bin/bash
gst1:x:1002:1003:,,,:/home/gst1:/bin/bash
ad1:x:1003:1004:,,,:/home/adm1:/bin/bash
ad2:x:1004:1005:,,,:/home/adm2:/bin/bash
我想先提取 'guest' 对其进行一些操作,然后提取 'gst1' 。然后我想提取管理员用户名(ad1 和 ad2)
是否可以在while循环中一个一个地提取它们。我想要这样
start from label #guest
get user 'guest'
===do some work with 'guest'===
continue above steps for the users up to label #gend
我在嵌入式目标中运行这个 linux,并且文件系统是自定义构建的。