Betriebssystemspezifische Kommandos

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
graphicsH
User
Beiträge: 84
Registriert: Donnerstag 8. September 2011, 10:21

Sonntag 13. November 2011, 20:39

Hi Leute,
Ich arbeite derzeit an einem CLI der auf allen geläufigen Betriebssystemen (Windows,Linux,Unix,Mac OS (X),usw.) funktionieren soll.
Manche Befehle jedoch kann ich nur durch os.system ausführen (z.B. herunterfahren).Die entsprechenden Befehle unterscheiden sich
jedoch je nach Betriebssystem.Da ich aber nur Windows benütze kenne ich die entsprechenden Befehle nicht.
Daher wäre es nett wenn ihr hier mir auf meine Betriebssystemspezifische-Befehls-Fragen antworten könntet.

Hier wäre schon mal meine erste Frage:
Wie lautet der Befehl zum änder des Fenstertitels in den jeweiligen Betriebssystemen?

Windows = title NeuerName

postet bitte den Befehl + Betriebssystem...
-
problembär

Sonntag 13. November 2011, 21:14

Wenn Du Dein Projekt nicht auf anderen Plattformen testen kannst, wäre es wohl am besten, Du beschränkst Dich erstmal auf das, was Du hast (Windows).

Unter Linux funktioniert das nämlich ganz anders. Der Fenstertitel wird durch den Windowmanager festgelegt, und davon gibt es unter Linux mehrere (KDE, Gnome, WindowMaker u.a.).
Ein Programm, daß das für einige Windowmanager relativ unabhängig von der Konsole aus machen könnte, wäre dies:

http://tomas.styblo.name/wmctrl/

Jedoch dürften das nur die wenigsten installiert haben. Ist also nicht so einfach. Dafür gibt's mehr Vielfalt als nur den einen von Microsoft vorgegebenen Desktop.

Gruß
lunar

Sonntag 13. November 2011, 22:38

@graphicsH: Lies Dokumentation und teste das Programm selbst auf den entsprechenden Betriebssystemen. Mit Frage-Antwort-Spielchen wirst Du nicht weit kommen.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Montag 14. November 2011, 10:55

Und nicht jedes Problem hat eine 1:1 Umsetzung in einem anderen Betriebssystem.

Zudem: ``os.system`` durch ``subprocess`` ersetzen bitte.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
graphicsH
User
Beiträge: 84
Registriert: Donnerstag 8. September 2011, 10:21

Montag 14. November 2011, 17:13

@lunar und problembär:
Auf Windows funktioniert es bereits problemlos.Daher möchte ich es jetzt noch auf andere OS anpassen.

@problembär:
Der Fenstertitel wird durch den Windowmanager festgelegt
Gibt es da einen Windowmanager vorinstallierten den fast jeder hat?Wenn ja, wie lautet der Befehl zum ändern des Fenstertitles?
-
lunar

Montag 14. November 2011, 17:16

@graphicsH: Dann installiere Dir die entsprechenden Systeme, lese deren Dokumentation und passe das Programm darauf an.
Benutzeravatar
graphicsH
User
Beiträge: 84
Registriert: Donnerstag 8. September 2011, 10:21

Montag 14. November 2011, 17:28

@lunar:
kein Speicherplatz etc.

@all:
Aber könnte mir nicht einfach ein benützer eines anderen Betriebssystemes einen entsprechenden Befehl sagen,anstatt nun darüber zu diskutieren wie ich noch komplizierter an die informationen kommen könnte?
-
BlackJack

Montag 14. November 2011, 17:30

@graphicsH: Es geht nicht darum dass Du komplizierter an die Information kommst, sondern dass Du überprüfen kannst dass Dein Programm überhaupt korrekt läuft. Funktionalität in ein Programm einzubauen, die man nicht ausführen und damit auch nicht testen kann, ist ziemlich sinnfrei.
Benutzeravatar
graphicsH
User
Beiträge: 84
Registriert: Donnerstag 8. September 2011, 10:21

Montag 14. November 2011, 17:35

@BlackJack:
@graphicsH: Es geht nicht darum dass Du komplizierter an die Information kommst, sondern dass Du überprüfen kannst dass Dein Programm überhaupt korrekt läuft. Funktionalität in ein Programm einzubauen, die man nicht ausführen und damit auch nicht testen kann, ist ziemlich sinnfrei.
und wir sind wieder beim:
darüber zu diskutieren
Und testen kann ich,wenn ich fertig bin,bei Freunden,weil da haben manche Mac oder Linux...
Daher bitte einfach mal die Befehle schreiben...
-
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

Montag 14. November 2011, 18:15

Haha, das wird nix …

Neustart: `reboot` `init 6`
Ausschalten: `halt` `init 0`
Mit root-Rechten (je nach System)
the more they change the more they stay the same
Benutzeravatar
graphicsH
User
Beiträge: 84
Registriert: Donnerstag 8. September 2011, 10:21

Montag 14. November 2011, 18:16

thx Dav1d,aber welches OS ist dass?
-
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

Montag 14. November 2011, 18:48

Archlinux, ich weiß nicht in wie weit das von Distribution zu Distribution unterscheidet …
the more they change the more they stay the same
Benutzeravatar
graphicsH
User
Beiträge: 84
Registriert: Donnerstag 8. September 2011, 10:21

Montag 14. November 2011, 18:53

Ok,thx
-
jerch
User
Beiträge: 1633
Registriert: Mittwoch 4. März 2009, 14:19

Montag 14. November 2011, 18:58

graphicsH hat geschrieben:Und testen kann ich,wenn ich fertig bin,bei Freunden,weil da haben manche Mac oder Linux...
Daher bitte einfach mal die Befehle schreiben...
Deine Freunde werden sich bedanken, wenn Du nach dem 5. Fehlversuch immernoch angerannt kommst...
Wenn Du systemspezifisch entwickelst, dann schaffe auch die Voraussetzungen, dass ordentlich testen zu können.

Zum "Befehl" unter Unixoiden für Fenstertitel:
Hilfts Dir was, wenn ich Dir sage, dass es eine Escape-Sequenz gibt, die von xterm eingeführt wurde und von vielen Terminalemulatoren unter X unterstützt wird? Und hier liegt nämlich die Crux - es können nicht alle Emulatoren und Du bist wieder aufs Testen angewiesen. Wir drehen uns im Kreis.

Neustart und Herunterfahren über init, shutdown und Konsorten zu machen, ist unter einer komplexen Desktop-Umgebung (KDE, Gnome,...) eher unerwünscht, da den Diensten der Stecker gezogen wird. Die Umgebungen bringen Schnittstellen mit (DBUS), die den geordneten Rückzug über logout bis hin zum Neustart (falls erlaubt) triggern können. Da sind so viele Wenn und Aber, dass das ohne Testen schief gehen muss.
Zuletzt geändert von jerch am Montag 14. November 2011, 19:11, insgesamt 1-mal geändert.
BlackJack

Montag 14. November 2011, 19:09

Neustart: SYS64738, System: C64 :twisted:
Antworten