[Batch/Bash] PID herrausfinden?

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von C2C2, 17. Januar 2010 .

  1. 17. Januar 2010
    PID herrausfinden?

    Ich brauche eine bash die das macht:

    Starte programm
    gebe die pid zurück
    schreibe pid in nen file
    ende
     
  2. 17. Januar 2010
    Zuletzt von einem Moderator bearbeitet: 15. April 2017
    AW: PID herrausfinden?

    Der meint woll die ProcessID, wenn er sagt Programmm starten.

    Irgentwie verstehe ich nicht warum hier immer solche Fragen gestellt werden die mit Batch nahezu unmöglich sind.

    Schreib dir doch direkt ein kleines C++ Tool ä.a welches das macht was du willst.
    Dann kannst du das Teil mit Batch aufrufen, wenn es unbedingt Batch sein muss.

    Ansonsten wird dir womöglich der Thread weiter helfen.

    Mfg Rushh0ur
     
  3. 20. Januar 2010
    AW: PID herrausfinden?

    Entschuldigung an den Threadersteller, hab gedacht es geht um Batch und da ist das meines Wissens nicht möglich.

    In bash geht das so:
    Code:
    blablablabefehl [B]&[/B]
    echo $! > pid.txt
    in $! steht die PID des letzten prozesses, der im hintergrund (deswegen das &) gestartet wurde.
     
  4. 20. Januar 2010
    AW: PID herrausfinden?

    Google spuckt auch was ganz brauchbares heraus, und da ich eh heute nen sozialen Tag habe:
    Batch - PID von gestartetem Programm - administrator.de

    Viel spaß.
     
  5. 22. Januar 2010
    AW: PID herrausfinden?

    Du kannst es so machen:

    Zuerst startest du dein Programm, dann rufst du mit "tasklist" alle laufenden Prozesse ab und filterst per Namen die PID deines Prozesses heraus. Das setzt vorraus, dass dein Programm das einzige laufende mit diesem Namen ist.

    Code:
    C:\Dokumente und Einstellungen\Alex>tasklist
    
    Abbildname PID Sitzungsname Sitz.-Nr. Speichernutzung
    ========================= ===== ================ ========== ===============
    System Idle Process 0 Console 0 28 K
    System 4 Console 0 240 K
    smss.exe 512 Console 0 408 K
    csrss.exe 708 Console 0 3.032 K
    winlogon.exe 908 Console 0 5.740 K
    services.exe 952 Console 0 3.744 K
    lsass.exe 964 Console 0 1.600 K
    Sollte es nicht das einzige sein würde ich es so versuchen:

    Code:
    C:\Dokumente und Einstellungen\Alex>tasklist /V
    
    Abbildname PID Sitzungsname Sitz.-Nr. Speichernutzung Status Benutzername CPU-Zeit Fenstertitel 
    ========================= ===== ================ ========== =============== =============== ================================================== ============ 
    System Idle Process 0 Console 0 28 K Wird ausgef�hrt NT-AUTORITŽT\SYSTEM 7:02:47 Nicht verf�gbar 
    System 4 Console 0 240 K Wird ausgef�hrt NT-AUTORITŽT\SYSTEM 0:02:57 
    Dann würde ich die PID durch Dateinamen + Laufzeit (die logischerweise sehr gering ist, da du dein Programm gerade erst gestartet hast.)

    Das ist auf jeden Fall in Batch realisierbar, auch wenns keine sauberer Lösung ist.


    //Im Endeffekt also so:

    Code:
    programm.exe
    tasklist | findstr /o "programm.exe" >PID.txt
    
    Den Inhalt der PID.txt musste dir dann selber filtern, da hab ich gerade keine Lust zu
     
  6. 22. Januar 2010
    AW: PID herrausfinden?

    PHP:
    program . exe
    for / "tokens=2"  %% i in  ( 'tasklist^|findstr /b "program.exe"' ) do  set  "PID=%%i"
    echo % PID % >  pid . txt
    So wärs optimal...
     
  7. 23. Januar 2010
    AW: PID herrausfinden?

    Nur so als Hinweis, er sucht das ganze in Bash, nicht Batch.

    Wäre mal nett, wenn sich der TE melden würde und seinen Thread dann closen könnte, wenn alle Fragen geklärt sind.
     
  8. 24. Januar 2010
    AW: PID herrausfinden?

    Vedammt

    Jetzt haben wir aber einen Thread vorgebeugt, der das selbe mit Batch will :lol:
     
  9. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.