ich diese Dateien verschieben möchten (Erweiterung ist irrilevant)wenn überhaupt ein Wort identisch Namen
cane pazzo.txt
cane.torrent
incredibile cane s03.xx
in Ordner
cane
Ich habe diesen Code
@echo off
setlocal enabledelayedexpansion
pushd %1
for /F "USEBACKQ tokens=*" %%a in (`dir /b /a:-d`) do (
set "_file=%%a"
for /D %%b in (*) do (
if NOT "x!_file:%%b=!" == "x!_file!" (
move %%a %%b
)
)
)
popd
, aber ich kann nur Dateien verschieben, die den gleichen Namen wie der Ordner
habenStatt diese Dateien
cane pazzo.txt
incredibile cane s03.xx
nicht innerhalb bewegt, weil mehr von einem Wort innerhalb Dateinamen haben. Warum??
Jede Lösung mit .bat-Skript?
In PowerShell wäre es 'foreach ($ dir in gci -Distrectory) {gci | wo Name -match $ dir.Name | mv -Destination $ dir} ' – TessellatingHeckler
Also existiert der Ordner' cane' bereits, und sein Name ist das Wort, nach dem in den Dateinamen gesucht werden soll? – aschipfl
@aschipfl Ja, es ist richtig..aber ich weiß nicht, wie ich Powershell verwenden muss. Ich kopiere Befehl, aber es sagt mir ungültig .. –