Python/Bash에서 기본 터미널의 명령을 인쇄하는 방법은 무엇입니까?

Python/Bash에서 기본 터미널의 명령을 인쇄하는 방법은 무엇입니까?

저는 터미널 팝업을 사용하여 git 복제, 패키지 설치 등과 같이 실행 중인 프로세스를 사용자에게 표시하는 데스크톱 응용 프로그램을 개발 중입니다. 문제는 우리 팀과 내가 모든 사용자를 위해 Xterm을 설치하고 사용했는데 대부분의 경우 부적절해 보인다는 것입니다. 저는 시스템의 기본 터미널 에뮬레이터를 가져와 실행하는 안정적인 방법을 찾으려고 노력해 왔습니다.

os.system('basename "/"$(ps -f -p $(cat /proc/$(echo $$)/stat | cut -d \ -f 4) | tail -1 | sed \'s/^.* //\')')실행하면 bash를 사용하여 터미널을 감지할 것이라고 들었습니다 . 불행하게도 이것은 명령이 실행되는 파일의 이름만 읽는 것 같습니다. pythonPython 쉘, test.py스크립트 및 Konsole에서 konsole인쇄합니다 . bash 스크립트에서 명령을 사용하고 호출해 보았지만 해당 명령이 있는 파일의 이름만 인쇄됩니다.

나는 또한 사용하라는 지시를 받았지만 os.system('echo $TERM')어쨌든 출력됩니다.xterm-256color

Python을 통해 직접 호출을 시도하고 pstree -sA $$ | head -n1 | awk -F "---" '{ print $(NF-1) }'bash 스크립트를 통해 Python을 통해 호출을 시도했지만 여전히 성공하지 못했습니다. 그냥 내보내세요 python.

기본 터미널을 확인하는 솔루션이 있는 사람이 있나요? 변수로 저장하려면 Python 스크립트 내에서 실행될 수 있어야 합니다. 네이티브 터미널 에뮬레이터가 필요합니다.

편집: 저는 KDE 데스크탑 환경을 사용하여 Arch Linux를 실행하고 있습니다. 모든 데스크탑 환경에서 실행되도록 설계되었습니다.

관련 정보