2012-01-17 2 views
1

xterm (아래 참조)을 사용하여 매분 새 터미널 창에서 새 인스턴스를 시작하는 python 스크립트가 있습니다. 여러 데스크탑 (?)이있는 Java 데스크탑에서 solaris를 실행하고 있는데 다른 데스크탑에서 작업하는 경우 스크립트가 처음 실행되는 데스크탑에 새 터미널이 나타나기를 원할 때 나타납니다. 그 대답은 xterm 명령이 될 것이라고 확신하지만 어디에서나 찾을 수는 없습니다!스폰 된 터미널이 다른 데스크탑에 나타납니다.

import sys, os, subprocess, time 

i = 1 

args = ['xterm', '-e', 'python2.6', 'script.py'] 

x = int(sys.argv[1]) 

while i <= x: 
     subprocess.Popen(args) 
     i += 1 
     time.sleep(60) 

답변

0

더 나은 설명에 대한 링크를 추적하는 데 문제가 있지만 X 프로토콜은 새 창을 받아야하는 데스크탑 결정하는 창 관리자에 쉽게하지 않는 나의 이해 때 "명령 "새 창을 시작하려면 창 관리자 외부에서 시작해야합니다.

예를 들어, 창 관리자는 프로그램을 시작하고 현재 바탕 화면을 알고있는 툴바를 제공 할 수 있으며 새 클라이언트 창이 렌더링 될 때 사용할 바탕 화면을 창 관리자에게 알릴 수 있습니다. 그러나 시스템의 다른 응용 프로그램이 바탕 화면을 알지 못하고 창 관리자에게 어떤 창을 사용할 것인지, 어떤 바탕 화면을 사용할지를 알지 못한 채 다른 응용 프로그램이 창을 시작하면 대신 "활성"바탕 화면으로 이동합니다.

일부 창 관리자는 창 클래스 또는 이름에 대한 힌트를 지정할 수 있습니다. (창 관리자의 몇 가지 힌트를 사용할 수를보고, 클라이언트를 클릭 xprop(1)를 실행합니다.) 예를 들어

:

경우 창 관리자를 사용하면 새 클라이언트 창과 다른 속성을 쉽게 일치시키고 원하는 위치로 이동할 수 있으므로을 사용할 수 있습니다.창이 필요하지 않은 경우의 -class 명령 줄 옵션을 사용하여 리소스 클래스를 재정의 할 수 있습니다.

관련 문제