![RPM 사양 파일에서 현재 빌드 플랫폼이 Scientific Linux인지 테스트하는 방법은 무엇입니까?](https://linux55.com/image/102704/RPM%20%EC%82%AC%EC%96%91%20%ED%8C%8C%EC%9D%BC%EC%97%90%EC%84%9C%20%ED%98%84%EC%9E%AC%20%EB%B9%8C%EB%93%9C%20%ED%94%8C%EB%9E%AB%ED%8F%BC%EC%9D%B4%20Scientific%20Linux%EC%9D%B8%EC%A7%80%20%ED%85%8C%EC%8A%A4%ED%8A%B8%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
현재 빌드 플랫폼이 사양 파일의 Scientific Linux인지 테스트하고 싶습니다. 그러나 저는 플랫폼이 Scientific Linux인 경우에만 이 테스트가 true를 반환하기를 원합니다. 따라서 유사한 플랫폼 CentOS 및 Red Hat Enterprise Linux라도 이 테스트에서 true를 반환할 수 없습니다. 가능합니까?
답변1
Scientific Linux 7.2에는 특정 매크로가 없는 것 같습니다. 대신 다음에서 복사된 콘텐츠 rpm
만 표시합니다 .rhel
# rpm --showrc | egrep -i 'sci|rhel'
-14: rhel 7
자신만 의 /etc/rpm/macros
매크로를 설정하는 대신 시스템이 제대로 작동하지 않을 경우 실패할 ~/.rpmmacros
코드를 파일에 작성할 수 있을 것 같습니다 .*.spec
%prep
%setup -q
fgrep -q 'Scientific Linux' /etc/redhat-release || exit 1