Qualsiasi opzione per modificare il nome Copia qui di default di Windows XP da "Copia di {nome}. {Ext}" a "{nome}. {Ext} .copy"


9

Esiste un'opzione o uno strumento che mi permetterà di modificare la convenzione di denominazione predefinita per i file copiati nella stessa directory in Windows (XP) e versioni successive.

ad es. da: copia di {name}. {ext} in: {name}. {ext} .copy

Attualmente:

original_file.php
Copy of original_file.php

desiderata:

original_file.php
original_file.php.copy

Ciò renderebbe molto più facile trovare / lavorare con file duplicati (si ordinano automaticamente insieme) e il tipo di file (per estensione) cambia quindi non può "rompere" accidentalmente qualcosa (ad esempio se fosse un file * .java, durante la compilazione di I otterrebbero errori)


Soluzione alternativa a Notepad ++: se hai a che fare solo con file contenenti testo, come implica la fine di PHP sopra, puoi usare Notepad ++ con la sua funzione di salvataggio automatico. Vedi> Impostazioni> Preferenze> Scheda "Backup / Completamento automatico" usa "Backup semplice" per 1 solo file di backup, usa "Backup dettagliato" per una cartella separata in cui i file ottengono i timestamp. Dai un'occhiata anche al plug-in Salvataggio automatico, questo potrebbe essere quello che desideri.
Kai Noack,

Risposte:


9

Se ho capito bene, vuoi creare duplicati dei file nella stessa directory. Ho creato un file .cmd per farlo tramite il menu "Invia a". Se un name.ext.copyfile esiste già, creerà:

  • name.ext.copy2
  • name.ext.copy3
  • eccetera...

Installare

  1. Vai al Start > Run...menu e digita " sendto" o " shell:sendto".
  2. Nella finestra che si apre, crea un nuovo file di testo.
  3. Apri il nuovo file in Blocco note.
  4. Incolla nel testo qui sotto.
  5. Rinomina il file di testo in " Copy of.cmd" (tra virgolette).

Usare

  1. Seleziona uno o un gruppo di file.
  2. Fare clic con il tasto destro del mouse sui file.
  3. Seleziona l' opzione Send To...> Copy of.cmd.

Copia di.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

Grazie @kskfisher! sembra che sarà una grande soluzione (se non ci fosse un modo predefinito) per farlo. ;-)
scunliffe l'

0

Quindi ho risolto che:

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

Immagino che il problema del percorso che hai postato derivi da come hai fatto la voce del menu contestuale, perché non ho questo problema.

[HKEY_CLASSES_ROOT\*\shell]

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

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

Non utilizzo MS Windows Explorer. Uso vari file manager portatili / freeware.

Tutti (tranne uno) avevano il problema che lo script originale avrebbe copiato il file nella directory principale "install" del gestore file freeware, quindi ho aggiunto %~d1%~p1che inserisce l'unità \ percorso del file originale sul file di output ...

Ho modificato il codice in vari modi per vari motivi e per lanciare il codice su qualsiasi file selezionato tramite il menu contestuale di XP, non SendTo.


Grazie @AEN - ti stai solo chiedendo come "installi" questo elemento come proprio menu contestuale rispetto a un figlio del menu Invia a?
scunliffe,

1
In realtà, sono riuscito a modificare il registro e aggiungere questa opzione al menu di scelta rapida ... ma penso che provi a creare la copia / ricerca nella directory in cui si trova il mio file * .cmd, non la directory del file selezionato. Ho usato le impostazioni del registro (modificate) da qui: superuser.com/questions/65105/… per aggiungere l'elemento di contesto.
scunliffe,

AEN, dovresti registrarti sul sito o provare a conservare i tuoi cookie, altrimenti non sarai in grado di modificare o rispondere al tuo post. Inoltre, ti preghiamo di tenerlo civile, quello che facciamo noi "redattori" è - in primo luogo - mantenere tutto facile da leggere. Come da FAQ , le azioni intraprese qui dovrebbero essere chiare per te. Prendilo come un promemoria gentile, senza offesa.
slhck,

Mi piace il tuo codice batch. Quando si copia ripetutamente un file chiamato file.txt usando il proprio codice tramite il menu "Invia a", si ottiene il file {copy1} .txt, il file {copy2} .txt e così via. Tuttavia, se qualcuno preferisce produrre file (1) .txt, file (2) .txt e così via, le parti del codice che mostrano {copy% 2} possono essere modificate in (% 2). So che questo è un vecchio thread, ma volevo contribuire per gli altri che potrebbero trovarsi in questa pagina.
Trekker,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.