DEL * 1. * usuwa wszystkie pliki w folderze

24

Próbuję usunąć wszystkie pliki, które kończą się numerem jeden, ale z jakiegoś powodu usuwa wszystkie pliki w folderze.

Polecenie, którego używam to

DEL *1.*

Działa, gdy używam litery takiej jak

DEL *e.*

ale kiedy używam numeru, wszystko jest usuwane.

Alex
źródło
1
Nie zgadzam się z bliskimi głosami
Nifle,
Fakt, że jedno pytanie dotyczy pytania o dirzachowanie symboli wieloznacznych, a drugie pytanie o delto samo zachowanie symboli zastępczych, nie powoduje, że są to różne pytania, Nifle. Podstawą pytania jest zachowanie symboli wieloznacznych w dopasowywaniu nazw . Często zadawane, a ten duplikat ma prawie kanoniczną formę. grawity odpowiedziała na to dwukrotnie wcześniej. Więc mam ja . To są duplikaty .
JdeBP,

Odpowiedzi:

36

System Windows zachowuje nazwę pliku 8.3 dla każdego pliku, aby zapewnić zgodność.

Więc jeśli masz pliki

test1.ext
test2.ext
test3.long

ostatni plik zostanie zapisany pod alternatywną nazwą

TEST3~1.LON

w ten sposób dopasowując wzór *1.*.

Możesz wykonać, dir /xaby zobaczyć wszystkie nazwy plików w wersji 8.3.

Poprawki :

  • Aby usunąć wszystkie pliki z katalogu directoryo nazwie 8.3, wykonaj

    fsutil 8dot3name strip directory
    
  • Aby usunąć wszystkie pliki w katalogu directoryo nazwie 8.3, łącznie z plikami w podkatalogach, uruchom

    fsutil 8dot3name strip directory /s
    
  • Aby wyłączyć 8.3 nazwy plików na dysku drive:(dotyczy tylko nowo utworzonych plików), uruchom

    fsutil 8dot3name set drive: 1
    
  • Aby całkowicie wyłączyć nazwy plików 8.3 (dotyczy tylko nowo utworzonych plików), uruchom

    fsutil 8dot3name set 1
    

Aby uzyskać pełną składnię, wykonaj

fsutil 8dot3name strip & fsutil 8dot3name set

Dalsze informacje:

Dennis
źródło
1
Które wersje systemu Windows dotyczą tych?
jprete
1
@jprete: Długie nazwy plików (a tym samym dziwactwo symboli wieloznacznych) istnieją od NT 3.5 w 1994 roku. Zostały fsutilwprowadzone w XP, jeśli dobrze pamiętam.
Dennis