Eigene Shell mit CMD Modul

  • Hallo Leute! :D

    Ich habe vor kurzem ein Python Projekt angefangen.
    Ich versuche eine eigene Shell mithilfe Python und dem Modul cmd zu schreiben!

    Ich bin noch ziemlich am Anfang des Projekts, und brauche daher auch noch Hilfe.

    Ich habe es schon geschafft eine akzeptable Kommandozeile zu schreiben (nur ein paar Kommandos, zum Testen).

    Nun meine Fragen:

    • Wie kann ich es machen, dass ein Kommando, wenn ich es nicht selbst geschrieben habe, automatisch als Bash-Kommando ausgeführt wird und die Ausgabe des Programmes auch ausgegeben wird? (Und ich will das NICHT mithilfe eines Kommandos, z.B.: exe [kommando] realisieren)
    • Wie kann ich dann zum Schluss das ganze auch als Login Shell starten?


    Danke schon im Voraus! :danke_ATDE: Ich freue mich auf eine Diskussion und (natürlich) auf weitere Verbesserungsvorschläge!

    MfG

    AaronAlpha


    PS: Könntet ihr mir Ideen für einen Namen für die Shell geben?

    Remember: A hacker is a computer freak, a cracker is a Criminal Hacker!

    Einmal editiert, zuletzt von AaronAlpha (8. April 2014 um 19:00)

  • Interessant. Ich mache schon länger mit Python rum - aber cmd ist mir noch nicht untergekommen. Habe dazu auch weil ich mal wissen wollte was das kann, einen hilfreichen Beitrag mit Beispielen dazu gefunden.

    Zu Deiner Frage 1: subprocess ist das Stichwort

    Zu Deiner Frage 2: Die habe ich nicht so ganz verstanden.

    • Offizieller Beitrag

    Um das ganze abzurunden..Ich hab mit beiden Fragen Verständnisprobleme. bei erstens hätte ich auch zuerst an subprocess gedacht, dann bin ich aber über cmd (Win) und exe (Win) in Kombination mit Bash gestolpert... Bei 2 kriegst du nur ein :denker:

  • Interessant. Dann haben wir also fast alle Verstaendniskombinationen durch. Nur hat keiner beide Fragen verstanden :-/ Tenor: Der TE sollte noch mal genauer beschreiben was er eigentlich vorhat :shy:

  • Oder wir warten noch ein bisschen ... evtl. kommt ja noch jemand mit einem hochinteressanten weiteren Aspekt hinzu ;) ...

    Nee ... hast schon recht, framp ... wobei sich mir die Frage stellt, wozu eine eigene shell gut sein soll. Wenn das was Vernünftiges werden soll, wird man da imho mit lex resp. flex drangehen ...

    cheerio,
    -ds-

  • Hallo!

    Noch einmal beide Fragen (aufgrund vin Verständnisproblemen:
    1. Wie kannn ich es machen, wenn ich das Kommando nicht selbst geschrieben habe, und dann sozusagen eine Meldung "Fehler, der Befehl existiert nicht" kommen sollte, der Befehl in der Bash ausgeführt wird.
    2. Wie kann ich das Python Programm als Login Shell verwenden (als richtige Shell)

    Danke!

    ArinAlpha

    Remember: A hacker is a computer freak, a cracker is a Criminal Hacker!

  • Befehle wie clear unter /bin , sind C Programme. ich weiß das weil ich den Befehl man und die Infos die rauskommen im Quelltext eines clock Programms gefunden habe. Man kann den C Programmen Parameter übergeben. die bash hat einen Form wie man die Parameter übergibt zb la -l .

    Es ist doch eigenartig das Parameter durch ein Lehrzeichen getrennt werden. in c ruft man andere Programme mit exec befehlen auf. für eine login shell müssest du einen eigene Art coden wie du Parameter übergibst.

    1. Wie kannn ich es machen, wenn ich das Kommando nicht selbst geschrieben habe, und dann sozusagen eine Meldung "Fehler, der Befehl existiert nicht" kommen sollte, der Befehl in der Bash ausgeführt wird.

    P.S. wie läuft es den ? :D der thread ist sehr alt aber ich mag das Thema

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!