나는 아래에 갈 것이다. 텍스트 파일 "appleApps.txt"는 새 빌드에서 검색을 기권하지 않을 기본 Apple 응용 프로그램의 목록 일뿐입니다. 유효한 기업 응용 프로그램은 새로운 키이 사실에 부울 세트로 "의 Info.plist"파일에 삽입해야합니다.
이제 우리는 사용자가 이미 패키지 한 응용 프로그램의 자체 복사본을 설치하고 있는지 여부를보고하는 메커니즘을 갖게되었습니다. 팁에 대한
#!/bin/bash
echo " "
echo " "
rm -f /tmp/validApps /tmp/notValid
find /Applications -name "*.app" | grep -v -F -f /Library/Application\ Support/CompanyData/appleApps.txt | while read APP
do
appVersion=`defaults read "$APP/Contents/Info" Company 2>/dev/null`
if test "$appVersion" = 1 ; then
echo "$APP : $appVersion" >> /tmp/validApps
else
echo "$APP" >> /tmp/notValid
fi
done
echo " "
echo " "
result=$(cat -n /tmp/validApps)
notValidResult=$(cat -n /tmp/notValid)
printf "%s\n" "Our packaged Applications are:" "$result"
echo " "
echo " "
printf "%s\n" "User installed Applications are:" "$notValidResult"
echo " "
rm -f /tmp/validApps /tmp/notValid
exit 0
덕분에 지금까지 $result
내 오류와 같은 나는 우리 ls
에 왜 안에 읽어 둘 @ 크리스와 @anubhava
하라는 메시지로, 그것을 할 수 없습니다 배웠습니다
@Chris는 내가 잘못 가고 있다는 것을 나에게 분명히 말했기 때문에 귀하의 의견을 보내 주셔서 감사합니다. 나는 공백의 사용에 동의하고 우리 사무실 사용자에게 파일 이름에 공백을 사용하지 말라고 말한다. – chop