Powershell: Newlinezeichen Entfernen

m-o-m-o

PCGH-Community-Veteran(in)
Guten Abend,

kennt sich einer von euch mit der Windows Powershell aus? Ich möchte mir nämlich ein Script basteln, dass mir die aktuelle Chromium Build lädt und automatisch installiert. Dazu nehme ich mir die LATEST Datei auf dem Server zu Hilfe und speichere den String in einer Variable. Ich poste einfach mal das, was ich habe.
Code:
$wget = new-object System.Net.WebClient
$build_version = $wget.DownloadString("http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/LATEST")
$inst_url = "http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/", $build_version, "/mini_installer.exe"
$wget.downloadfile($inst_url,"C:\Users\XXXX\AppData\Local\Temp\mini_installer.exe")
Write-Output $build_version #Debug, kommt bei fkt. Script raus
Write-Output $inst_url #Ebenfalls

Problem an der Sache: Es entstehen 2 unnötige Zeilenumbrüche in der fertigen URL, folglich kann ich den Installer dann nicht mehr herunterladen.

Code:
http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/
3843
/mini_installer.exe

Wie kriege ich die raus?

Ach ja: Das Skript wird dann von Task Scheduler ausgeführt. Wenn jemand eine einfachere Lösung kennt (anderer Browser zählt nicht :P), dann raus mit der Sprache. ;)
 
Ich kenne mich (noch) nicht mit der Powershell aus, aber beim Vorgänger VB-Script würde man die drei Strings (bzw. zwei Strings und eine Variable) schlicht mit + oder & aneinanderhängen.
Also so:
$inst_url = "http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/" & $build_version & "/mini_installer.exe"
Da würden solche Brüche nicht entstehen. Bietet Powershell nichts anderes als die Kommata? Das kanns doch irgendwie nicht sein.
 
Hehe, ich bin gerade eben auch drauf gekommen. Ich habe davor auch schon + versucht, aber irgendwas habe ich da noch falsch gemacht...
Auf jeden Fall funktioniert es jetzt :daumen: Vielen Dank für den Tipp, auch wenn ich ihn gar nicht mehr gebraucht habe. Hier noch einmal das fertige Skript, falls das jemand haben möchte:

Code:
$wget = new-object System.Net.WebClient
$build_version = $wget.DownloadString("http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/LATEST")
$inst_url = "http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/"+$build_version+"/mini_installer.exe"

$wget.downloadfile($inst_url, $env:temp+"\mini_installer.exe")
$env:temp\mini_installer.exe
 
Hehe, ich bin gerade eben auch drauf gekommen. Ich habe davor auch schon + versucht, aber irgendwas habe ich da noch falsch gemacht...
Auf jeden Fall funktioniert es jetzt :daumen: Vielen Dank für den Tipp, auch wenn ich ihn gar nicht mehr gebraucht habe. Hier noch einmal das fertige Skript, falls das jemand haben möchte:

Code:
$wget = new-object System.Net.WebClient
$build_version = $wget.DownloadString("http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/LATEST")
$inst_url = "http://build.chromium.org/f/chromium/snapshots/Win_Webkit_Latest/"+$build_version+"/mini_installer.exe"

$wget.downloadfile($inst_url, $env:temp+"\mini_installer.exe")
$env:temp\mini_installer.exe

Als welches Format muss ich das Script speichern?

Lg
 
Ach ja, kleine Information, wenn man das Script nutzen möchte: Vorher die Powershell als Admin starten und
Code:
Set-ExecutionPolicy unrestricted
eingeben. ;)

.PS1 hat ja schon Octocore als Dateiendung genannt.
 
Zurück