master hovercats/oakiss / scripts / perms.awk
 1BEGIN {
 2	RS = ""
 3	sort = "sort -k 2"
 4}
 5
 6function mode() {
 7	for (i = 2; i <= NF; ++i) {
 8		if ($i ~ /^mode=/)
 9			return substr($i, 6)
10	}
11	printf "file '%s' is missing mode attribute\n", $1 >"/proc/self/fd/2"
12	exit(1)
13}
14
15/type=dir/ {
16	printf "04%s %s\n", mode(), substr($1, 2) |sort
17}
18
19/type=reg/ {
20	m = mode()
21	if (m != "0644" && m != "0755")
22		printf "10%s %s\n", m, substr($1, 2) |sort
23}