Ich habe einen Ordner mit 1000 .bin-Dateien. Ich hätte gerne Hilfe bei der Suche nach einem PowerShell-Befehl, um Verknüpfungen zu diesen Dateien mit einem statischen Satz von zu erstellenKommandozeilenparameterim „Ziel“ der Verknüpfung, nämlich ein Programm (C:\prog.exe), ein Argument (-X), eine Datei (dll.dll) und schließlich der Dateiname (randomly_named_file.bin)
Eine Abkürzung mit Zielargumenten
"C:\prog.exe" -X "C:\dll.dll" "C:\folder\file_0001.bin"
Wenn ich alle .bin-Dateien im Ordner markiere, mit der rechten Maustaste auf den Zielordner klicke und ziehe und „Verknüpfung hier erstellen“ auswähle, erhalte ich über 1000 Verknüpfungen, wobei unter „Ziel“ nur der Dateiname steht. Ich muss über 1000 Verknüpfungen erstellen, alle mit denselben Zielargumenten.
Antwort1
Hilfe anderswo im Internet gefunden!
Dies ist ein einfaches, elegantes PowerShell-Skript, mit dem Sie Milliarden von Verknüpfungen gleichzeitig erstellen und an alle Zielargumente anhängen können, während der Dateiname/Speicherort am Ende der Zielargumentegruppe erhalten bleibt:
PS C:\Ordner\wo\Dateien\aufbewahrt\werden>
Get-ChildItem | ForEach-Object {
$original = '"' + $_.FullName + '"'
$link = 'C:\folder\where\files\are\kept' + $_.BaseName + '.lnk'
$wshell = New-Object -ComObject WScript.Shell
$shortcut = $wshell.CreateShortcut($link)
$shortcut.TargetPath = 'C:\prog.exe'
$shortcut.Arguments = '-X "C:\dll.dll" ' + $original
$shortcut.Save()
}
Es war der+ $Originaldas bisschen, das ich gesucht habe. Hurra.