배포판에 따라 다른 코드를 실행하려는 스크립트를 작성 중입니다. 구체적으로 이것은 새 머신을 설정하기 위한 스크립트이며 kubuntu 백포트 저장소를 추가하고 싶습니다(kubuntu-restricted-extras 및 기타 설치도 설치). 그러나 머신이 kubuntu를 실행 중인 경우에만 해당됩니다.
나는 이것을 수행하는 몇 가지 방법을 보았지만 다른 우분투 기반 배포판을 구별할 만큼 구체적이지 않은 것 같습니다. 예를 들어:
lsb_release -a
uname -a
쿠분투에 있어도 우분투가 표시됩니다echo $DESKTOP_SESSION
플라즈마가 표시되고env | grep XDG_CURRENT_DESKTOP
KDE가 표시됩니다. 이것이 쿠분투와 KDE 네온을 구별할 수 없을 것 같습니다.
내가 찾은 유일한 방법은 다음과 같습니다.
if env | grep -q kubuntu
then
echo "running kubuntu"
fi
그러나 이는 특정 구성 디렉토리의 존재에 의존하는 것 같습니다. 버전 간에 안정적으로 유지될지 확신할 수 없습니다. 이를 수행하는 더 정확한 방법이 있습니까?
세부 사항
- 이 스크립트는 특정 우분투 변형을 실행하는 컴퓨터에서만 실행할 수 있습니다.
- 내가 구별해야 할 주요 분포는 다음과 같습니다.우분투,쿠벤투,KDE 네온, 그리고인기! _os. 제가 가장 혼란스러워하는 것은 배포판 중 2개는 KDE를 실행하고 다른 2개는 GNOME을 실행하므로 단순히 DE를 확인할 수 없다는 사실입니다.
- 이 정보를 얻기 위해 소프트웨어를 설치하게 되어 기쁘지만 해당 배포판에 대한 표준/기본 저장소의 일부인 경우에만 가능합니다. 예를 들어
neofetch
공정한 게임인데 가끔 그런 말을 들었어요.보고서 이름이 잘못되었습니다.