2014-12-03 2 views
0

기본적으로 나는 당신이 가지고있는 OS에 따라 다른 코드를 실행할 수 있기를 원합니다.nodejs에서 다른 리눅스 배포판을 구별하십시오.

os.platform() 함수는 "win32", "win64", "darwin"또는 "linux"(다른 사람?)를 반환하지만 더 구체적인 정보를 얻을 수없는 것으로 나타났습니다.

이상적으로 나는 Gnome, Unity, KDE 또는 다른 데스크탑 환경이 사용되고 있는지 알고 싶습니다.

+0

혼란 스럽네요, 그게 당신이 원하는거야? OS, 배포판 또는 데스크탑 환경? – mscdex

+0

@mscdex이 프로젝트는 데스크톱 환경이라고 생각하지만, 다른 정보도 얻는 방법을 알면 좋을 것입니다. – QxQ

답변

2

활성 데스크탑 환경/창 관리자를 얻는 것이 노드 별 문제는 아닙니다. different approaches (일부는 다른 것보다 낫습니다)은 pgrep을 사용하여 알려진 DE/WM 이진 이름에 대해 프로세스 이름을 확인하고 HardInfo 또는 wmctrl과 같은 다른 도구를 사용하는 것을 포함합니다.

0

나는 결국 mscottnielsen의 bash 스크립트를 사용했다. 많은 다른 명령 중에서 가장 좋은 것을 사용하여 어떤 데스크탑 환경이 사용되고 있는지를 알아내는 것 같습니다. 유감스럽게도, 정확한 문자열을 알아내는 것은 어렵습니다. 문자열이 출력되는 곳은 말할 것도없고, 다른 곳에서는 결과가 나오지 않습니다.

here 스크립트를 참조하십시오.

관련 문제