您的位置:首页 > 运维架构 > Linux

手斧Linux – 从LFS到Funtoo (92)

2015-06-27 04:41 387 查看
$(VAR_DB)/passwd.db: /etc/passwd

@echo -n "$(patsubst %.db,%,$(@F))... "

@$(AWK) 'BEGIN { FS=":"; OFS=":" } \

/^[ \t]*$$/ { next } \

/^[ \t]*#/ { next } \

/^[^#]/ { printf ".%s ", $$1; print; \

printf "=%s ", $$3; print }' $^ | \

$(MAKEDB) -o $@ -

@echo "done."

$(VAR_DB)/group.db: /etc/group

@echo -n "$(patsubst %.db,%,$(@F))... "

@$(AWK) 'BEGIN { FS=":"; OFS=":" } \

/^[ \t]*$$/ { next } \

/^[ \t]*#/ { next } \

/^[^#]/ { printf ".%s ", $$1; print; \

printf "=%s ", $$3; print; \

if ($$4 != "") { \

split($$4, grmems, ","); \

for (memidx in grmems) { \

mem=grmems[memidx]; \

if (members[mem] == "") \

members[mem]=$$3; \

else \

members[mem]=members[mem] "," $$3; \

} \

delete grmems; } } \

END { for (mem in members) \

printf ":%s %s %s\n", mem, mem, members[mem]; }' $^ | \

$(MAKEDB) -o $@ -

@echo "done."

$(VAR_DB)/ethers.db: /etc/ethers

@echo -n "$(patsubst %.db,%,$(@F))... "

@$(AWK) '/^[ \t]*$$/ { next } \

/^[ \t]*#/ { next } \

/^[^#]/ { printf ".%s ", $$1; print; \

printf "=%s ", $$2; print }' $^ | \

$(MAKEDB) -o $@ -

@echo "done."

$(VAR_DB)/protocols.db: /etc/protocols

@echo -n "$(patsubst %.db,%,$(@F))... "

@$(AWK) '/^[ \t]*$$/ { next } \

/^[ \t]*#/ { next } \

/^[^#]/ { printf ".%s ", $$1; print; \

printf "=%s ", $$2; print; \

for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \

{ printf ".%s ", $$i; print } }' $^ | \

$(MAKEDB) -o $@ -

@echo "done."

$(VAR_DB)/rpc.db: /etc/rpc

@echo -n "$(patsubst %.db,%,$(@F))... "

@$(AWK) '/^[ \t]*$$/ { next } \

/^[ \t]*#/ { next } \

/^[^#]/ { printf ".%s ", $$1; print; \

printf "=%s ", $$2; print; \

for (i = 3; i <= NF && !($$i ~ /^#/); ++i) \

{ printf ".%s ", $$i; print } }' $^ | \
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: