Robmantuto 1 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 (bearbeitet) Folgendes Szenario: Ich habe einen Ordner, in dem wird ein neuer Ordner erstellt, der immer einen anderen Namen hat. Ist der Ordner erstellt, soll der Name des Ordners ausgelesen werden und für einen Kopiervorgang einer Datei benutzt werden. Um es genauer zu erklären, ich habe eine Datei, die per Skript in diesen Ordner kopiert werden soll, da aber der Ordner immer einen anderen Namen bekommt, kann ich den Namen im Skript nicht hinterlassen. Deshalb müsste der Name des Ordners erst ausgelesen werden und dann für den Kopiervorgang als Ziel benutzt werden. Ist das möglich? bearbeitet 12. Dezember 2016 von Robmantuto Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Moin, grundsätzlich sollte das möglich sein, aber aus deiner Beschreibung ist nicht zu entnehmen, was da überhaupt passiert. Wer oder was legt den Ordner an? Und wer oder was führt den Kopiervorgang aus? Und von was für einer Skriptsprache/-umgebung reden wir hier? Gruß, Nils Zitieren Link zu diesem Kommentar
Robmantuto 1 Geschrieben 12. Dezember 2016 Autor Melden Teilen Geschrieben 12. Dezember 2016 Der Ordner wird von Windows erstellt und hat die SID des angemeldeten Users, ist aber irrelevant, da es eigentlich darum geht, den Namen auszulesen, egal wie dieser zustande kam. Den Kopiervorgang würde ich dann per Skript ausführen wollen und würde das Ganze in PowerShell umsetzen wollen. Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Moin, du solltest dir angewöhnen, Nachfragen nicht einfach so abzutun. Sonst gibt man es schnell auf, dich zu unterstützen. Windows legt ja nicht einfach so Ordner an. Wer veranlasst es auf welchem Weg dazu? Wenn es beispielsweise ein Skript ist, das das tut, dann könnte sich deine Ergänzung ja einfach dort einklinken. Grundsätzlich könnte man so vorgehen: Die vorhandenen Ordner auslesen und den neuen Ordner identifizieren Den neuen Ordner in eine Variable speichern und das Attribut Name verwenden In den so identifizierten Ordner die Datei kopieren Hilft dir nicht weiter? Siehste. Genauer kann ich das aber leider deinen Angaben nicht entnehmen. Gruß, Nils Zitieren Link zu diesem Kommentar
Robmantuto 1 Geschrieben 12. Dezember 2016 Autor Melden Teilen Geschrieben 12. Dezember 2016 Ich tue gar nichts ab, für mich ist es in dem Fall irrelevant, ich hätte auch sagen können, ich habe einen Ordner, der ist bereits da und ich möchte in Powershell ein Skript schreiben, das mir den Namen dieses Ordners ausliest und im Skript verwendet, um eine Datei per Befehl, im Skript, in diesen ausgelesenen Ordner kopiert. Natürlich könnte man an diesem Punkt fragen, warum man nicht gleich den Pfad mit dem Namen des Ordners im Skript einträgt, jedoch war das nicht meine Frage. Meine Frage war, gibt es in Powershell diese Möglichkeit und mit welchen Befehlen kann man das umsetzen? Gruß, Rob Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Moin, http://lmgtfy.com/?q=powershell+get+folder+name Sorry, aber anders kann ich das nicht beantworten. Wenn du konkrete Fragen hast, dann stell sie bitte auch konkret. Sonst ist hier Schluss für mich, Nils 1 Zitieren Link zu diesem Kommentar
Robmantuto 1 Geschrieben 12. Dezember 2016 Autor Melden Teilen Geschrieben 12. Dezember 2016 (bearbeitet) Was soll denn nicht daran konkret sein? Ich denke, ich habe es gut erklärt. Nochmal für dich: Mit welchem Befehl kann ich den Namen der Ordners B, der sich im Ordner A unter "MeinPfad" befindet, auslesen und diesen Namen für einen weiteren Befehl, nämlich Kopieren einer Datei von einem Stick nach "Meinpfad\Name des Ordners, der ausgelesen wurde", verwenden. Und bitte ein Beispiel. Danke. bearbeitet 12. Dezember 2016 von Robmantuto Zitieren Link zu diesem Kommentar
magheinz 110 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Name DES Ordners oder Name DER Ordner? get-childitem könnte auch helfen. Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 12. Dezember 2016 Melden Teilen Geschrieben 12. Dezember 2016 Wow .... mit der Attitude kommst Du bestimmt gut durchs Leben. Na dann versuchs doch mal mit Get-ChildItem. Die komplette Hilfe zu diesem cmdlet bekommst Du mit: Get-Help Get-ChildItem -Full Viel Spaß! Zitieren Link zu diesem Kommentar
Robmantuto 1 Geschrieben 14. Dezember 2016 Autor Melden Teilen Geschrieben 14. Dezember 2016 (bearbeitet) $user = [Environment]::UserName) ([Security.Principal.NTAccount]($user)).Translate([Security.Principal.SecurityIdentifier]).Value Damit bekomme ich auf jeden Fall die SID raus. Wie setze ich dieses Information für den Kopiervorgang ein? Erläutere es nochmal am konkreten Beispiel: Ich habe den Zielort: C:\Windows\System32\GroupPolicyUsers\SID(hier mir nicht bekannt bzw. müsste per Skript ausgelesen werden)\User\ Dorthin soll die Registry.pol vom Stick kopiert werden. bearbeitet 14. Dezember 2016 von Robmantuto Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Dezember 2016 Melden Teilen Geschrieben 14. Dezember 2016 ... ich zwar auch immer noch nicht verstanden, wo Du dann hinwillst, aber vielleicht hilft Dir das hier weiter: $user = $Env:UserName $SID = ([Security.Principal.NTAccount]($user)).Translate([Security.Principal.SecurityIdentifier]).Value $SID $ZielPfad = "C:\Windows\System32\GroupPolicyUsers\SID$SID\User\" $ZielPfad Zitieren Link zu diesem Kommentar
PowerShellAdmin 169 Geschrieben 14. Dezember 2016 Melden Teilen Geschrieben 14. Dezember 2016 (bearbeitet) Die Anforderungen klingen im Ansatz sehr einfach, wer eine fertig Lösung will, soll halt einen Dienstleister kontaktieren. Aber selbst diese sind noch nichtmal richtig und verständlich formuliert. :nene: Der Bereich hier ist zur Unterstützung und nicht fürn gedeckten Tisch! bearbeitet 14. Dezember 2016 von PowerShellAdmin Zitieren Link zu diesem Kommentar
Robmantuto 1 Geschrieben 14. Dezember 2016 Autor Melden Teilen Geschrieben 14. Dezember 2016 (bearbeitet) Ne Frage, warum das zweite $SID hinter $SID = ([Security.Principal.NTAccount]($user)).Translate([Security.Principal.SecurityIdentifier]).Value$SID? Ich sehe schon, dient nur dazu da, um die SID nochmal auszugeben, genauso wie beim Zielpfad. Hat funktioniert, danke. Hier ist doch ein SID zu viel, kann es sein? ...Users\SID$SID\User\" bearbeitet 14. Dezember 2016 von Robmantuto Zitieren Link zu diesem Kommentar
BOfH_666 577 Geschrieben 14. Dezember 2016 Melden Teilen Geschrieben 14. Dezember 2016 C:\Windows\System32\GroupPolicyUsers\SID(hier mir nicht bekannt bzw. müsste per Skript ausgelesen werden)\User\ Hier ist doch ein SID zu viel, kann es sein? Ich kann auch nur mit dem arbeiten, was Du mir anbietest .... statt der Erklärung in Klammern, hab ich eben die ausgelesene SID eingefügt. Wenn Du's nicht brauchst, lass'es weg. Es schmerzt übrigens nicht, wenn man das ein oder andere in der Konsole oder in der ISE einfach ausprobiert ;) :rolleyes: Zitieren Link zu diesem Kommentar
Robmantuto 1 Geschrieben 14. Dezember 2016 Autor Melden Teilen Geschrieben 14. Dezember 2016 (bearbeitet) Nee, ist klar, habe ich auch getestet. Die Klammern sollten es näher erklären, ist ja auch egal. bearbeitet 14. Dezember 2016 von Robmantuto Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.