배포판에 따라 다른 코드를 실행하려는 스크립트를 작성 중입니다. 구체적으로 이것은 새 머신을 설정하기 위한 스크립트이며, 쿠분투 백포트 저장소(그리고 kubuntu-restricted-extras 설치와 같은 몇 가지 다른 것)를 추가하고 싶지만 해당 머신이 쿠분투를 실행하는 경우에만 해당됩니다.
이 작업을 수행하는 몇 가지 방법을 보았지만 다른 우분투 기반 배포판을 구별할 만큼 구체적이지 않은 것 같습니다. 예를 들어:
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
공정한 게임이지만 가끔 그런 말을 듣습니다.잘못된 이름을 보고합니다