Mitspieler Online

· Gäste: 25

· Mitspieler Online: 0

Login

Benutzername

Passwort



Passwort vergessen?
Um ein neues Passwort anzufordern klicke hier.

Ereignisse

<< Mai 2024 >>
Mo Di Mi Do Fr Sa So
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Social

Thema ansehen

 Thema drucken
RPT per PowerShell anzeigen und live verfolgen
29.10.2019 um 20:44

Top  #1  Beitrag drucken

fusel

Benutzeravatar
Über Roter Oktober gestolpert

Zeigte große Kreativität bei der Sprengung eines unerwarteten U-Boot-Fundes.

W-ichtigtuer


Beiträge: 904

Registriert am: 04.12.16

Ist gerade als 5-Minuten-Abfallprodukt entstanden, vielleicht hilft es jemandem: Die nachfolgende Funktion sucht die neueste RPT und zeigt deren Inhalt an. Dies kann man mit den Parametern Follow und Tail noch verfeinern:

-Follow
Zeigt alle weiteren Änderungen an, genau wie das Linux tail-Command. So kann die RPT live verfolgt werden

-Tail
Es werden nur die letzten N Zeilen angezeigt. -1 zeigt alle Zeilen an, 0 keine, jede Zahl > 0 dann die entsprechende Anzahl

Beide Parameter sind optional, können einzeln oder auch kombiniert benutzt werden.


Function Get-Arma3Rpt
{
  Param
  (
    [switch]
    $Follow,

    [int]
    $Tail = -1
  )
 
  $file = (Get-ChildItem "$env:LOCALAPPDATA\Arma 3\" -Filter "*.rpt" | sort LastWriteTime -Descending)[0]

  if(Test-Path -PathType Leaf $file.FullName)
  {
      if($Follow)
      {
        Write-Output "----------------------"
        Write-Output " Press CTRL+C to exit "
        Write-Output "----------------------"
      }
   
      Get-Content -Wait:$Follow -Tail $Tail -Path $file.FullName
  }
  else
  {
    Throw [System.IO.FileNotFoundException] "No RPT found"
  }
}




Wer es jetzt besonders komfortabel mag, legt sich das Ganze in seinem PowerShell-Profil ab, das sich normalerweise hier befindet: %USERPROFILE%\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

Die Datei entweder mit einem Editor öffnen oder ggf. neu anlegen. In die Datei kopiert ihr obige Funktion, zusätzlich darunter bei Bedarf noch einen Alias:

Set-Alias rpt Get-Arma3Rpt



Nachdem all das erledigt ist, öffnet ihr einfach ein (neues) PowerShell-Fenster und führt dann
rpt

(Wer keinen Alias angelegt hat: Get-Arma3Rpt) oder
rpt -Follow

oder
rpt -Tail 50

oder
rpt -Follow -Tail 50

aus.

Wenn das nicht funktionieren sollte, liegt das in der Regel an der ExecutionPolicy (Google). Dazu einmalig PowerShell als Admin starten und folgendes eintippen:
Set-ExecutionPolicy RemoteSigned


Damit dürfen unsignierte PowerShell-Scripts von eurer lokalen Festplatte ausgeführt werden.

Viel Spaß, Feedback wäre nett

PS: Script in 5 Minuten geschrieben, dieser Post hat 10 Minuten gefressen :)
Bearbeitet von fusel am 29.10.2019 um 21:29
forum.gruppe-w.de/pics/Foren_Signaturen/Fusel.png

[23.10.2020 12:19] sebbel: Davon, was bei fusel im Kopf rumgeht, kriegen Erwachsene Alpträume
29.10.2019 um 23:06

Top  #2  Beitrag drucken

Farantis

Benutzeravatar
Ordensmann

Die Macht an dich gerissen

Moderator


Beiträge: 676

Registriert am: 08.01.16

Oder ihr ladet euch die Linux Tools für Windows runter...
tail -f <filename>

forum.gruppe-w.de/pics/Foren_Signaturen/Farantis.png
30.10.2019 um 07:33

Top  #3  Beitrag drucken

fusel

Benutzeravatar
Über Roter Oktober gestolpert

Zeigte große Kreativität bei der Sprengung eines unerwarteten U-Boot-Fundes.

W-ichtigtuer


Beiträge: 904

Registriert am: 04.12.16

Du hast aber den Zweck verstanden, oder? :)

Ports gibt es genug: WSL, Cygwin, Msys2, L4W, native tail-Builds...

Hier ging es nicht um Tail per se, sondern speziell um "Mal eben schnell ohne nachdenken in die aktuelle RPT gucken".
forum.gruppe-w.de/pics/Foren_Signaturen/Fusel.png

[23.10.2020 12:19] sebbel: Davon, was bei fusel im Kopf rumgeht, kriegen Erwachsene Alpträume
Springe ins Forum:
Seitenaufbau in 0.37 Sekunden
Serverzeit: 12:10:09 Uhr , 54,712,828 eindeutige Besuche