Istnieje dziwne zachowanie w programie PowerShell, gdy na ścieżce znajdują się nawiasy kwadratowe. Na przykład, jeśli jesteś w folderze:Dziwne zachowanie z nawiasami w ścieżce
C:\Some Movie [2011]
który zawiera plik mkv
i wpisać:
ls *.mkv
nic nie jest zwracana! Myślę, że problem polega na tym, że PowerShell próbuje zrobić coś takiego:
Get-ChildItem 'C:\Some Movie [2011]\*.mkv'
która nie dlatego [2011]
uważany jest wieloznaczny. Udało mi się sprowadzaniu wszystko mkv
z takiego folderu za pomocą następującego polecenia:
Get-ChildItem -LiteralPath 'C:\Some Movie [2011]' -Include *.mkv
ale gdy próbuję nakarmić te wyniki w poleceniu Zmień nazwę-element zawiedzie.
Get-ChildItem -LiteralPath 'C:\Some Movie [2011]' -Include *.mkv | Rename-Item -NewName "movie.mkv"
Te same operacje w folderze bez nawiasów działają bezproblemowo. Jakieś pomysły?
Co zrobić, jeśli folder zawiera więcej niż jeden plik mkv? Nie możesz zmienić ich wszystkich na movie.mkv. –
Tak, mam tylko jeden plik 'mkv', po prostu nie znam jego nazwy, więc potrzebuję symbolu wieloznacznego. – lalibi