archit
Goto Top

Ordener mit Variable als Name erstellen

Morgen,

Ich habe das Problen, dass ich im cmd ein Programm erstellen möchte, dass Ordner erstellt.
Bis jetzt habe ich schon das:
@echo off 

cd c:\User\"meinName"\Desktop  
:loop
mkdir 1
goto loop

Das Programm erstellt jetzt einen Order und sobald es einen neuen erstellen will kommt eine Fehlermerdung weil ja
der Ordner schon existiert.
Kann ich das Irgendwie umgehen?

Ich hatte die Idee mit Variablen zu arbeiten und dem Ordner eine Variable als Name zuzuweisen, die sich bei jedem loop
um 1 erhöht, hab aber keinen Plan wie das geht (falls es überhaupt geht).

Wäre cool wenn mir jemand helfen könnte. face-smile

Gruß
e.t

Content-ID: 524688

Url: https://administrator.de/forum/ordener-mit-variable-als-name-erstellen-524688.html

Ausgedruckt am: 26.12.2024 um 06:12 Uhr

erikro
erikro 12.12.2019 um 09:57:17 Uhr
Goto Top
Moin,

guck mal hier:
https://ss64.com/nt/for.html

hth

Erik
mayho33
Lösung mayho33 12.12.2019 um 11:13:04 Uhr
Goto Top
HI,

Ich bin kein Freund der CMD. Liegt eventuell daran, dass sie (mein subjektiver Eindruck) umständlich handzuhaben ist und es unter W10 viel bessere Tools OnBoard gibt die solche Aufgaben einfacher erledigen können und noch dazu Dot.Net unterstützen. Etwa die Powershell ISE

$TargetDir = "<dein ZielOrdner>"  
$folders = [System.IO.Directory]::GetDirectories($TargetDir, "*.*", [System.IO.SearchOption]::TopDirectoryOnly)  
$nextName = $folders.Count + 1
[System.IO.Directory]::CreateDirectory($TargetDir + "\" + $nextName)  

Grüße!
archIT
archIT 12.12.2019 um 11:17:44 Uhr
Goto Top
Super!! Danke Dir!
erikro
erikro 12.12.2019 aktualisiert um 11:21:59 Uhr
Goto Top
Moin,
> $TargetDir = "<dein ZielOrdner>"  
> $folders = [System.IO.Directory]::GetDirectories($TargetDir, "*.*", [System.IO.SearchOption]::TopDirectoryOnly)  
> $nextName = $folders.Count + 1
> [System.IO.Directory]::CreateDirectory($TargetDir + "\" + $nextName)  
> 

Warum so kompliziert?

$count = 1
while ($true) {

    new-item -itemtype directory -path $env:userprofile -name $count
    $count++

}

Erstellt im Ordner des angemeldeten Users so viele Verzeichnisse bis das Dateisystem oder die Platte voll sind. face-wink

Liebe Grüße

Erik
mayho33
mayho33 12.12.2019 um 11:26:07 Uhr
Goto Top
Zitat von @erikro:

Moin,
Warum so kompliziert?

> $count = 1
> while ($true) {
> 
>     new-item -itemtype directory -path $env:userprofile -name $count
>     $count++
> 
> }
> 

Erstellt im Ordner des angemeldeten Users so viele Verzeichnisse bis das Dateisystem oder die Platte voll sind. face-wink

Liebe Grüße

Erik

Naja! Jeder hat seine eigene Technik und es soll ja ein anschauliches Beispiel sein mit dem der TO nicht gleich sein OS lahm legt. Aber ich gebe dir natürlich recht! So ginge es auch. face-wink

Grüße!
142232
142232 12.12.2019 aktualisiert um 11:37:21 Uhr
Goto Top
Zitat von @erikro:
Warum so kompliziert?
while ($true) {

new-item -itemtype directory -path $env:userprofile -name $count
$count++

}

Warum so lang ? face-smile

1..10 | %{md "$env:Userprofile\User$_"}  
See ya