Se Windows genera un errore, hai un problema di virus o vuoi discutere/segnalare l'uscita della nuova versione di un software per la piattaforma Microsoft, questa è la sezione giusta.
torno su questi lidi dopo parecchio tempo perchè nello scrivere un piccolo script .bat (erano millenni che non lo facevo... ho dovuto sudare per le cose più stupide ) che automatizza un task ripetitivo, mi sono inceppato di fronte ad un problema che non riesco a risolvere...
In pratica ho un archivio compresso con all'interno una cartella contenente i files che mi interessano. Io dovrei quindi estrarre il contenuto di quella cartella (e solo il contenuto, mantenendo però inalterata tutta la struttura delle sottocartelle) in un precisa directory del disco, sovrascrivendo i file che vi sono contenuti.
Faccio un piccolo schemino che spero chiarisca meglio la situazione di partenza (sopra) e quella a cui dovrei arrivare (sotto)
Ora, io spero di sbagliarmi, ma possibile che la command line di 7zip non sia davvero in grado di fare un'operazione del genere? ... attualmente sono quindi arenato a questo comando, senza sapere come modificarlo per ottenere lo scopo:
ho provato con lo switch -o ma se lo inserisco ignora totalmente il comando di estrarre solo la sottocartella .... avrei quindi pensato di ricorrere al comando "rn" ma non trovo nessuna documentazione e non saprei come usarlo
OK a questo punto a voi la palla
PS
si potrei utilizzare altri comandi esterni a 7zip per rimaneggiare file e cartelle in un secondo momento, ma anche lì avrei alcune complicazioni e, se possibile, preferirei gestire tutto da 7zip
già studiati ma niente da fare (o per lo meno io non capisco come potrei riuscire ad ottenere quello che voglio)... del comando rn invece non si trovano guide (è stato inserito solo nella beta)
Non credo che sia possibile fare ciò di cui necessiti utilizzando il solo 7z tuttavia, visto che stai già utilizzando un script batch, puoi raggiungere il risultato desiderato aggiungendo qualche altra istruzione ed usufruendo dello strumento di sistema ROBOCOPY.
AVVERTIMENTO:Non ho testato in maniera approfondita i comandi quindi questi potrebbero non funzionare o, peggio ancora, eliminare dati utili. Prima dell'adozione, consiglio di effettuare qualche verifica preventiva.
7z x "C:\blabla\nomearchivio.7z" -aoa "C:\destinazione" -r
PUSHD "C:\destinazione\cartella_*"
SET dname=%cd%
POPD
ROBOCOPY "%dname%" "%dname%"\.. /E /MOVE /NJH /NJS /NFL /NDL
P.S.: Ovviamente è necessario sostituire C:\blabla\nomearchivio.7z e C:\destinazione con percorsi validi. P.S.2: Consiglio sempre di racchiudere i percorsi tra i doppi apici (") in maniera tale da non incappare in errori qualora i suddetti includessero spazi.
ROBOCOPY è utilizzabile su tutte le versioni di Windows? Comunque per adesso avevo aggirato l'ostacolo grazie ad una serie di passaggi aggiuntivi (sposta la cartella vecchia, rinomina, risposta, ecc...) e all'uso di "Advanced BAT to EXE Converter"
Vediamo se con il tuo suggerimento riesco a migliorare la situazione
resto tuttavia basito nell'aver scoperto che azioni tanto basilari (estrai il contenuto della cartella X in Y ) non vengano previste da 7zip
hashcat ha scritto:Se ci saranno novità, sono curioso, tienimi informato.
OK alla fine tra una modifica e l'altra, cambio di strumenti ecc, il problema ero riuscito ad aggirarlo. Probabilmente con il tuo suggerimento sarebbe venuto fuori un lavoro migliore ma non conoscendo la sintassi e come lavora ROBOCOPY alla fine ho deciso di non sbattermi per nulla visto che non ne valeva più la pena (ma mi riservo di darci un'occhiata a mente serena... che non si sa mai e uno strumento più nella propria toolbox non fa mai male )
Se ti interessa invece vedere la schifezzuola che ho tirato fuori, ecco:
Nel post ho già spiegato tutto quindi non vale la pena ripeterlo qui... se gli darai un'occhiata e avrai suggerimenti per migliorarlo io son sempre in ascolto
Nel post ho già spiegato tutto quindi non vale la pena ripeterlo qui... se gli darai un'occhiata e avrai suggerimenti per migliorarlo io son sempre in ascolto
nel frattempo
Appena possibile darò anch'io un'occhiata estesa al tuo script.
P.S.: xcopy è stato deprecato da Vista in su (ma è tuttora disponibile) in favore di Robocopy.
Oh non ne avevo idea... come detto era da anni che nemmeno mi interessavo più di queste cose e già riuscire a tirar fuori quello script è stato un gran risultato
Per eventuali futuri aggiornamenti allora provvederò di certo a sostituire xcopy con Robocopy
Inserendo un messaggio, dichiari di aver letto e accettato il regolamento di partecipazione.
Nello specifico, sei consapevole che ti stai assumendo personalmente la totale responsabilità delle tue affermazioni, anche in sede civile e/o penale,
manlevando i gestori di questo sito da ogni coinvolgimento e/o pretesa di rivalsa.
Dichiari inoltre di essere consapevole che il messaggio sarà visibile pubblicamente, accetti di diffonderlo con licenza
CC BY-NC-SA 3.0 (con attribuzione a "TurboLab.it") e rinunci ad ogni forma di compensazione (economica o altro).
Rinunci inoltre esplicitamente a qualsiasi pretesa di cancellazione del messaggio.