Ubuntu 16.04 파티션에 일부 소프트웨어 도구를 설치하려고 합니다. 설치 스크립트가 여기에서 약간 중단됩니다.
getInstalledLegacyPXIRMPackage() {
part=`$RPM -q $kLegacyPXIRMBaseName`
if [ $? -eq 0 ]; then
echo $part
return
fi
echo ""
}
내가 받은 오류 메시지는 입니다 bash: -q: command not found
.
이는 labview 2012 32비트 버전용 설치 파일의 일부입니다.
이 오류는 무엇입니까? 문제를 해결하려면 어떻게 해야 하나요? 감사해요!
편집: 네, 죄송합니다. 기술적으로는 func 정의를 위반하지 않습니다. 여기에서 호출하면 중단됩니다.
if [ "$(getInstalledLegacyPXIRMPackage)" != "" ] && [ "$(getIncludedPXIPSPackage)" == "" ]; then
.
.
.
fi
답변1
RPM
이 오류는 함수를 실행할 때 변수가 비어 있거나 정의되지 않았기 때문에 발생합니다 getInstalledLegacyPXIRMPackage
.
비어 있거나 정의되지 않은 경우 $RPM
해당 줄은
part=`$RPM -q $kLegacyPXIRMBaseName`
명령의 결과로 해석될 할당입니다 -q $kLegacyPXIRMBaseName
.
RPM
( 및 kLegacyPXIRMBaseName)
.