터미널을 시작하고 명령을 실행하는 스크립트를 작성해야 하며 다양한 시스템에서 작동하는 데 필요하다고 가정해 보겠습니다. 안전하고 휴대 가능한 방법으로 이 작업을 어떻게 수행할 수 있습니까?
항상 설치되어 있나요 xterm
? 나는 GUI가 있는 모든 *nix에는 터미널 에뮬레이터가 있어야 한다고 가정합니다. 어떻게 도달할 수 있나요? 데비안 시스템가지다 x-terminal-emulator
하지만 분명히,심지어 작동하지 않습니다Red Hat에서는 Linux 이외의 *nix는 말할 것도 없습니다.
답변1
내 생각엔 당신이 할 수 없을 것 같아요. xterm
모든 곳에 설치할 필요는 없으며 실제로 기본적으로 설치되지 않을 수도 있습니다. 특히 자체 터미널을 제공하는 데스크탑 환경을 사용하는 경우.
가장 좋은 방법은 아마도 다른 터미널이 있는지 확인하는 것입니다(예:xdg-terminal
,x-terminal-emulator
, gnome-terminal
, konsole
, xterm
). 아마도 FreeDesktop.org 표준에 xdg-terminal을 추가하기 위한 작업이 있을 것입니다.
그러면 터미널마다 명령을 실행하는 방법이 다르며 때로는 동일한 터미널의 버전도 다르다는 것을 알게 될 것입니다. 예를 참조하세요.데비안 버그 #648271.
관리자/사용자가 사용자 정의 명령을 설정할 수 있는 방법도 제공해야 할 수도 있습니다. 확실히 필요할 것입니다.
답변2
네, 래퍼를 사용해야 합니다. i3 WM에는 멋진 기능이 포함되어 있습니다. 여기에 설명해보세요:http://build.i3wm.org/docs/i3-sensible-terminal.html
이것을 스크립트의 쉘 함수에 복사하세요. http://code.stapelberg.de/git/i3/tree/i3-sensible-terminal