Nếu đủ để sử dụng các tiêu chí sau để xác định hồ sơ:
<key>Name</key>
<string>iOS Team Provisioning Profile: *</string>
bạn có thể quét thư mục bằng awk. Một lớp lót này sẽ tìm tệp đầu tiên có tên bắt đầu bằng "Nhóm iOS".
awk 'BEGIN{e=1;pat="<string>"tolower("iOS Team")}{cur=tolower($0);if(cur~pat &&prev~/<key>name<\/key>/){print FILENAME;e=0;exit};if($0!~/^\s*$/)prev=cur}END{exit e}' *
Đây là một tập lệnh cũng trả về trận đấu đầu tiên, nhưng dễ làm việc hơn.
#!/bin/bash
if [ $# != 1 ] ; then
echo Usage: $0 \<start of provisioning profile name\>
exit 1
fi
read -d '' script << 'EOF'
BEGIN {
e = 1
pat = "<string>"tolower(prov)
}
{
cur = tolower($0)
if (cur ~ pat && prev ~ /<key>name<\\/key>/) {
print FILENAME
e = 0
exit
}
if ($0 !~ /^\s*$/) {
prev = cur
}
}
END {
exit e
}
EOF
awk -v "prov=$1" "$script" *
Nó có thể được gọi từ trong thư mục cấu hình, $ HOME / Library / MobileDevice / Cấu hình cung cấp :
~/findprov "iOS Team"
Để sử dụng script, hãy lưu nó vào một vị trí thích hợp và nhớ đặt chế độ thực thi; ví dụ: chmod ugo + x