Mitspieler Online

· Gäste: 10

· Mitspieler Online: 0

· Mitspieler: 307

TeamSpeak 3

Gruppe W wird unterstützt von

Gruppe W - TS

Login

Benutzername

Passwort



Passwort vergessen?
Um ein neues Passwort anzufordern klicke hier.

Ereignisse

<< Dezember 2019 >>
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
Auszeit 2019

Hat am Halloweenevent 2019 teilgenommen.

Moderator


Beiträge: 942

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.

Download Code  Code

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:

Download Code  Code
Set-Alias rpt Get-Arma3Rpt



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

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

oder
Download Code  Code
rpt -Tail 50

oder
Download Code  Code
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:
Download Code  Code
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
www.gruppe-w.de/pics/Foren_Signaturen/Fusel.png
29.10.2019 um 23:06

Top  #2  Beitrag drucken

Farantis

Benutzeravatar
Firestarter

Hat gelernt, Feuer zu machen.

Seiten Administrator


Beiträge: 660

Registriert am: 08.01.16

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

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

Top  #3  Beitrag drucken

fusel

Benutzeravatar
Auszeit 2019

Hat am Halloweenevent 2019 teilgenommen.

Moderator


Beiträge: 942

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".
www.gruppe-w.de/pics/Foren_Signaturen/Fusel.png
Springe ins Forum:
Seitenaufbau in 0.20 Sekunden
Serverzeit: 13:39:49 Uhr , 14,834,593 eindeutige Besuche