PDA

View Full Version : Errore comando Move file.bat


pocholoco92
22-10-2016, 11:43
ciao, sono del tutto inesperto quindi probabile abbia fatto qualche errore comunque la situazione è questa

ho una cartella (folder) con dentro tante cartelle (folder_a, folder_b, etc)
tutte queste cartelle hanno dei file al loro interno
io vorrei creare una task che in automatico prenda tutti i file contenuti nella cartella (folder) e nelle sue sottocartelle (folder_a, folder_b, etc) e indifferentemente li sposti tutti insieme in una nuova cartella (dest)

ho letto in giro quindi che bisogna creare un file .bat
non sono riuscito a trovare informazioni su come spostare tutti i file ma solo singoli file

move C:\folder\file.txt C:\dest\file.txt

come faccio a intendere tutt i file di folder devono andare in dest?

scusate se è banale

EDIT:

ho trovato che questo

move C:\folder\* C:\dest\

sposta tutti file contenuti in "folder" ma non nelle sue sottocartelle

mi manca l'ultimo passo

x_Master_x
22-10-2016, 14:22
Il comando MOVE non ha un parametro recursivo, devi usare un loop For...Do. In firma se dovesse servire trovi Old Files Manager che ti permette di fare la stessa cosa senza scrivere una riga di codice, a te la scelta.

pocholoco92
22-10-2016, 18:06
wow, esattamente tutto quello che cercavo :D :D
ottimo programma che fa davvero tutto!

ho solo bisogno di un aiuto per creare una task automatica
in pratica nella cartella folder scarico dei file ognuno in una sottocartella e col programma riesco a spostarli tutti in un'unica cartella differente
mi chiedo però, piuttosto che fare l'attività programmata a tempo (ogni ora, mezz'ora, 5min etc) è possibile fare in modo che il programma faccia l' /automove nonappena un file viene scaricato in una sottocartella qualsiasi della cartella di origine?
quindi in pratica voglio rendera la cartella sempre vuota e solo di passaggio per lo smistamento dei file in tempo reale dopo il download
è possibile?

x_Master_x
22-10-2016, 19:21
Mi fa piacere che il programma ti sia utile, tieni d'occhio il thread ufficiale perchè in questo periodo rilascerò un aggiornamento.

Quello che mi chiedi, monitorare una cartella in tempo reale, è una cosa che ho già fatto in passato quindi tecnicamente sono in grado di farlo. Però...non credo c'entri molto con Old Files Manager, non so quante persone utilizzerebbero una cosa del genere e infine richiede che il programma sia sempre attivo.

Quindi ti propongo l'utilizzo di un altro software insieme al mio, Watch 4 Folder 2.5.1 Portable (http://www.mediafire.com/file/2zzv25zt20zzy8c/W4F25Free.zip)

Per prima cosa, copia queste stringhe su un Blocco Note e salva come OFM.vbs ( non .txt.vbs l'icona è diversa )

' x_Master_x
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run """X:\Percorso\Old Files Manager.exe"" /autocopy", 0, False
Set objShell = Nothing

Adatta il percorso con il tuo

Estrai W4F e aprilo, quindi:
1) Tab "Watch settings"
2) Select folder to watch --> Seleziona la cartella
3) Aggiungi la flag a:

Watch subfolder
File Create

4) Aggiungi la flag a:

Execute a program, batch or script

5) Seleziona il file VBS precedentemente creato, nel menù a tendina in basso devi mettere "VB Script Files"
6) Watch name --> Nome qualunque es. OFM
7) Clicca su "Apply"
8) Tab "Watch list"
9) Clicca su "Start" e sul pulsante "Tray"

Fine, ogni volta che aggiungerai un file verrà avviato Old Files Manger per spostarlo nella cartella voluta. Ovviamente non dovrai ripetere ogni volta la procedura da zero, bastano solo i punti 7) e 8)
Sembra difficile ma non lo è.

pocholoco92
23-10-2016, 07:15
grandioso hai la risposta a tutti i miei problemi
comunque per creare una task non intendevo usando il tuo programma, ma pianifica attività di windows, ma dato che hai consigliato un programma credo non si possa fare usando semplicemento quello

adesso passiamo al problema:
usando questo

' x_Master_x
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run """C:\Users\Francesco\Desktop\Old_Files_Manager_v2\Old Files Manager.exe"" /autocopy""", 0, False
Set objShell = Nothing

mi da l'errore

parametro non corretto.
scrivere /help per la lista dei parametri disponibili

x_Master_x
23-10-2016, 08:56
Non lo puoi fare con il solo Pianifica attività, hai bisogno comunque di un tool esterno come quello indicato, Powershell etc.

Ho fatto un piccolo errore con il VBS con le virgolette, ora dovrebbe funzionare.

pocholoco92
23-10-2016, 10:12
ottimo :D adesso funziona
solo una cosa, sto facendo varie prove per vederne bene il funzionamento
ho creato 5 file che sono stati spostati ma risulta il programma aperto 5 volte e non si chiude

http://prnt.sc/cxt6av

e la cpu è al 100%

http://prnt.sc/cxt7dy

x_Master_x
23-10-2016, 11:36
Ho provato su due OS diversi e non succede. Il mio programma si chiude sempre e comunque, da CMD, da VBS etc. ed ho seguito la mia guida passo-passo con W4F il file viene spostato/copiato correttamente ed il programma si chiude ( al termine dell'operazione, ovviamente )

Controlla di aver creato correttamente l'ini e di aver configurato W4F in modo giusto, controlla anche la posizione del VBS e di OFM che siano esterne a quelle directory, prova a lanciare OFM da CMD-VBS senza W4F. In ogni caso avevo già previsto nella prossima versione l'impossibilità di eseguire più istanze dell'applicazione per evitare situazioni del genere.

pocholoco92
26-10-2016, 12:44
ho rifatto tutto da capo e stavolta non ho problemi
quindi adesso basta impostare l'avvio automatico ogni volta che accendo il pc solo per watch4folder giusto? old files manager lo richiama lui giusto?

x_Master_x
26-10-2016, 13:15
Infatti mi sembrava strano una comportamento del genere. Esatto apri W4F punti 8 e 9 del mio post precedente.

pocholoco92
26-10-2016, 16:05
purtroppo però devo dire che non sempre funziona il monitoraggio in tempo reale e spesso non sposta il file e solo quando c'è una nuova modifica alla cartella vine spostato il file precedente
poco male però perche ho optato per aggiungere direttamente il collegamento con /automove alla barra inferiore e con un click ho risolto lo stesso

davvero grazie per questo bel programmino
non gli trovi difetti o cose mancanti ma se mi viene qualche idea che potrebbe essere utile te la faccio presente
ciao

x_Master_x
26-10-2016, 16:11
Il monitoraggio in tempo reale non dipende da me. Prego, passa quando vuoi nel thread ufficiale ;)