Dowolna opcja zmiany domyślnej nazwy systemu Windows XP Kopiuj tutaj z „Kopia {nazwa}. {Ext}” na „{nazwa}. {Ext} .kopia”


9

Czy istnieje opcja lub narzędzie, które pozwoli mi zmienić domyślną konwencję nazewnictwa plików skopiowanych do tego samego katalogu w systemie Windows (XP) i wyżej.

np. z: Kopia {nazwa}. {ext} do: {nazwa}. {ext} .kopia

Obecnie:

original_file.php
Copy of original_file.php

Pożądany:

original_file.php
original_file.php.copy

W ten sposób ustalenie / pracy z duplikatów plików znacznie łatwiejsze (oni automatycznego sortowania razem) i typ pliku (o rozszerzeniu) zmienia się w ten sposób, że nie mogą przypadkowo „break” coś (np gdyby był to plik * .java, po kompilacji I dostaną błędy)


Obejście Notepad ++: Jeśli zajmujesz się tylko plikami zawierającymi tekst, jak sugeruje powyższe zakończenie PHP, możesz użyć Notepad ++ z funkcją automatycznego zapisywania. Zobacz> Ustawienia> Preferencje> Zakładka „Kopia zapasowa / autouzupełnianie” użyj „Prostej kopii zapasowej” tylko dla 1 pliku kopii zapasowej, użyj „Pełnej kopii zapasowej” dla osobnego folderu, w którym pliki mają znaczniki czasu. Sprawdź także wtyczkę Autozapis, może to być to, czego chcesz.
— Kai Noack

Odpowiedzi:


9

Jeśli dobrze rozumiem, chcesz utworzyć duplikaty plików w tym samym katalogu. Utworzyłem plik .cmd, aby to zrobić za pomocą menu „Wyślij do”. Jeśli name.ext.copyplik już istnieje, utworzy:

  • name.ext.copy2
  • name.ext.copy3
  • itp...

Żeby zainstalować

  1. Przejdź do Start > Run...menu i wpisz „ sendto” lub „ shell:sendto”.
  2. W wyskakującym oknie utwórz nowy plik tekstowy.
  3. Otwórz nowy plik w Notatniku.
  4. Wklej poniższy tekst.
  5. Zmień nazwę pliku tekstowego na „ Copy of.cmd” (z cudzysłowami).

Używać

  1. Wybierz jeden lub grupę plików.
  2. Kliknij plik (i) prawym przyciskiem myszy.
  3. Wybierz opcję Send To...> Copy of.cmd.

Kopia .cmd

for %%f in (%*) do call :try_copy %%f
goto :eof

:try_copy
if not exist "%~1.copy%2" goto :copy
call :try_next %1 %2
goto :eof

:copy
copy %1 "%~1.copy%2"
goto :eof

:try_next
if "%2" == "" ( set _next=2 ) else ( set /a _next=%2 + 1 )
call :try_copy %1 %_next%
goto :eof

Dzięki @kskfisher! wygląda na to, że będzie to świetne obejście (jeśli nie ma domyślnego sposobu), aby to zrobić. ;-)
— scunliffe

0

Więc rozwiązałem to:

for %%f in (%*) do call :try_copy %%f
goto :eof

:try_copy
if not exist "%~d1%~p1%~n1{copy%2}%~x1" goto :copy
call :try_next %1 %2
goto :eof
:copy
if "%2" == "" call :try_next %1 %2
copy %1 "%~d1%~p1%~n1{copy%2}%~x1"
exit

:try_next
set /a _next=%2 + 1
call :try_copy %1 %_next%
goto :eof

Zgaduję, że problem ze ścieżką, który napisałeś, wynika z tego, jak wprowadziłeś pozycję menu kontekstowego, ponieważ nie mam tego problemu.

[HKEY_CLASSES_ROOT\*\shell]

[HKEY_CLASSES_ROOT\*\shell\AllF01]
 @="C&@py"

[HKEY_CLASSES_ROOT\*\shell\AllF01\command]
 @="C:\\AEdNs\\nCodIP\\nCodIU\\Copy.cmd \"%1\""

Nie używam MS Windows Explorera. Używam różnych przenośnych / darmowych menedżerów plików.

Wszyscy (oprócz jednego) mieli problem z tym, że oryginalny skrypt skopiowałby plik do katalogu głównego „install” darmowego menedżera plików, więc dodałem, %~d1%~p1który umieszcza dysk \ ​​ścieżka oryginalnego pliku w pliku wyjściowym ...

Poprawiłem kod na różne sposoby z różnych powodów i uruchomiłem kod w dowolnym wybranym pliku (plikach) za pomocą menu kontekstowego XP, a nie SendTo.


Dzięki @AEN - zastanawiam się, jak to „zainstalować”, aby było własnym elementem menu kontekstowego w porównaniu do elementu podrzędnego polecenia „Wyślij do menu”?
— scunliffe

1
Właściwie udało mi się edytować rejestr i dodać tę opcję do menu kontekstowego ... ale myślę, że próbuje utworzyć kopię / wyszukiwanie w katalogu, w którym znajduje się mój plik * .cmd, a nie w katalogu wybranego pliku. Użyłem ustawień rejestru (skorygowanych) tutaj: superuser.com/questions/65105/…, aby dodać element kontekstu.
— scunliffe

AEN, powinieneś zarejestrować się na stronie lub spróbować zachować pliki cookie, w przeciwnym razie nie będziesz w stanie edytować ani odpowiadać na swój post. Prosimy również o zachowanie postawy obywatelskiej, a my, „redaktorzy”, robimy przede wszystkim, aby wszystko było łatwe do odczytania. Zgodnie z często zadawanymi pytaniami podjęte tutaj działania powinny być dla Ciebie jasne. Po prostu weź to jako delikatne przypomnienie, bez obrazy.
— slhck 15.09.11

Podoba mi się twój kod partii. Podczas wielokrotnego kopiowania pliku o nazwie file.txt przy użyciu kodu za pomocą menu „Wyślij do”, uzyskuje się plik {copy1} .txt, plik {copy2} .txt i tak dalej. Jeśli jednak ktoś wolałby uzyskać plik (1) .txt, plik (2) .txt itd., Części kodu, które pokazują {copy% 2}, można zmienić na (% 2). Wiem, że to stary wątek, ale chciałem pomóc innym osobom, które mogą natknąć się na tę stronę.
— Trekker
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.