none
Pid aus Prozessname in Datei ohen Leerzeilen und Leerzeichen RRS feed

  • Frage

  • hallo!

    ich starte den ie als COM-Objekt und mache ihn dann auch sichtbar. Nun möchte ich für den nun sichtbar gewordenen IE die PID in eine Datei schreiben. Dazu habe ich folgendes Script erstellt

    (Get-Process -Name iexplore)| Where-Object {$_.MainWindo
    wHandle -eq $ie.HWND} | select id | format-table -HideTableHeaders >> d:\pid.txt

    Nur leider ist dann die PID in der Datei nicht am Anfang und mehrere Zeilen Zeilen verrutsch, da die Ausgabe sich offenbar an der Tabellenformatierung von get-process orientiert. Wie kann ich die PID ohne Leerzeilen und Leerzeichen eine Datei einfügen. Mit trim habe ich schon so einiges probiert. das ist mir nicht gelungen.

    Grüße

    Mittwoch, 24. Oktober 2012 15:17

Antworten

  • Ich habs herausbekommen
    (Get-Process -Name iexplore)| Where-Object {$_.MainWindowHandle -eq $ie.HWND} |  Select-Object -ExpandProperty id > d:\pid.txt

    Mittwoch, 24. Oktober 2012 15:56
  • Sowas kompliziertes habe ich selten gesehen!
    Hast du meine zweite möglichkeit ausprobiert?

    (Get-Process -Name iexplore| Where-Object {$_.MainWindowHandle -eq $ie.HWND}).ID



    Please click “Mark as Answer” if my post answers your question and click “Vote As Helpful” if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als “Als Hilfreich bewerten” und Beiträge die deine Frage ganz oder teilweise beantwortet haben als “Als Antwort markieren”.
    My PowerShell Blog http://www.admin-source.info
    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace' '
    German ? Come to German PowerShell Forum!

    Donnerstag, 25. Oktober 2012 14:37

Alle Antworten

  • Ich habs herausbekommen
    (Get-Process -Name iexplore)| Where-Object {$_.MainWindowHandle -eq $ie.HWND} |  Select-Object -ExpandProperty id > d:\pid.txt

    Mittwoch, 24. Oktober 2012 15:56
  • Generell sind die Format-* Befehle immer am Ende. Danach kommt nichts mehr.

    Format-* macht in etwas das gleiche wie ConvertTo-Html. Die Daten werden so gewandelt, daß eine weitere Verarbeitung nicht möglich ist.


    -Raimund

    Mittwoch, 24. Oktober 2012 21:05
  • Nun hab ich das Problem, dass ich auf dem Wirlsystem die Powershell 1.0 verwenden muss und dort gibt es offenbar den Parameter
    -ExpandProperty
    nicht. Wie kann ich nur die PID aus dem get-process ziehen. ohne Leerzeichen ohne Tabellenformatierenung nur die zahl.
    • Als Antwort markiert nieselfriem Donnerstag, 25. Oktober 2012 11:57
    • Tag als Antwort aufgehoben nieselfriem Donnerstag, 25. Oktober 2012 11:57
    Donnerstag, 25. Oktober 2012 11:56
  • Wieso benutzt du überhapt -expandProperty ? Das nimmt man nur wenn ein Property noch mehrere sub-werte hat!
    Du kommst auch mit dem "normalen" Select aus!

    Get-Process -Name iexplore| Where-Object {$_.MainWindowHandle -eq $ie.HWND} | Select ID

    Eine Möglichkeit ist noch:

    (Get-Process -Name iexplore| Where-Object {$_.MainWindowHandle -eq $ie.HWND}).ID



    Please click “Mark as Answer” if my post answers your question and click “Vote As Helpful” if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als “Als Hilfreich bewerten” und Beiträge die deine Frage ganz oder teilweise beantwortet haben als “Als Antwort markieren”.
    My PowerShell Blog http://www.admin-source.info
    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace' '
    German ? Come to German PowerShell Forum!


    Donnerstag, 25. Oktober 2012 12:34
  • [string]$pidtmp= (Get-Process -Name iexplore)| Where-Object {$_.MainWindowHandle -eq $ie.HWND} |  select id
    $pidtmp=$pidtmp.replace(" ","")
    $pidtmp=$pidtmp.replace("@{Id=","")
    $pidtmp=$pidtmp.replace("}","")
    $pidtmp > $ie_pid_path

    Donnerstag, 25. Oktober 2012 13:43
  • Sowas kompliziertes habe ich selten gesehen!
    Hast du meine zweite möglichkeit ausprobiert?

    (Get-Process -Name iexplore| Where-Object {$_.MainWindowHandle -eq $ie.HWND}).ID



    Please click “Mark as Answer” if my post answers your question and click “Vote As Helpful” if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als “Als Hilfreich bewerten” und Beiträge die deine Frage ganz oder teilweise beantwortet haben als “Als Antwort markieren”.
    My PowerShell Blog http://www.admin-source.info
    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace' '
    German ? Come to German PowerShell Forum!

    Donnerstag, 25. Oktober 2012 14:37