2016-07-29 5 views
0

Ich schreibe ein Shell-Skript für eine Präsentation einiger meiner Studenten C++ - Code und ich möchte das Skript den Quellcode automatisch öffnen und auf der rechten Hälfte des Monitors, während auf der linken Hälfte ist der Code sein im Terminal ausgeführt. Ich kann die beiden Fenster leicht öffnen, aber ich weiß nicht, wie ich sie bewegen soll.Wie schreibe ich Code in Linux, um automatisch 2 Fenster zu öffnen und zu verschieben?

Danke für die Hilfe!

+1

Welche Desktop und Window-Manager verwenden Sie? –

+0

Entschuldigung! Das Programm läuft auf raspbian auf einem Raspberry Pi –

+0

Aber Sie haben immer noch einige Desktop-Umgebung, oder zeigen Sie das X11-Fenster remote auf einigen X11-Server (auf dem Laptop oder Desktop vor Ihnen läuft, mit dem Bildschirm verbunden). Also meine Frage bleibt. Lesen Sie mehr über [X Window System] (https://en.wikipedia.org/wiki/X_Window_System), wenn Sie damit nicht vertraut sind. –

Antwort

2

Vielleicht, diese Hilfe Sie,

#!/bin/bash 
gnome-terminal --geometry 100x50+0+0 -x sh -c 'cat "$1"; bash' _ "[email protected]" 
dirname=$(dirname "$1") 
/usr/bin/g++ "$1" -o output 
gnome-terminal --geometry 100x50+1000+0 -x sh -c '"$1/output"; bash' _ "$dirname" 

Laufcode, wie unten;

./runCode.sh /tmp/test/helloword.c 

Sie können auch fix --geometry params

+1

Erwägen Sie, Ihr Angebot zu verbessern. 'sh-c 'Katze" $ 1 "; bash '_ "$ @" 'zum Beispiel ist ein Ersatz für die erste Zeile, die nicht so anfällig für Shell-Injection-Schwachstellen ist, wenn Ihr Dateiname als' $ 1 'etwas wie' $ (rm -rf $ HOME) 'übergeben hat als eine wörtliche Teilzeichenfolge. –

+0

ähnlich, "g ++" $ 1 "-o Ausgabe", und 'sh-c '" $ 1/Ausgabe "; bash '_ "$ dirname" ' –

+0

... könntest du auch' exec bash -i' oder ähnliches machen - es ist nicht nötig, die Kopie von '/ bin/sh', die zuerst als Kind erzeugt wurde, zu' gnome- zu behalten. Terminal im Speicher herum. –

Verwandte Themen