|
|
|
|
Strumenti |
05-04-2022, 12:09 | #1 |
Member
Iscritto dal: Mar 2010
Messaggi: 30
|
[BATCH] prendere i file con data più lontana
Salve
avrei necessità di creare un batch che faccia: 1) da una cartella recuperare i 2 file con data più lontana, la data di riferimento dove essere recuperata dal nome del file (pippo1_12_03_2020.mp3 e pippo2_12_03_2020.mp3) 2) successivamente questi 2 file devono essere rinominati (es: pippo1.mp3 e pippo2.mp3) e spostati un altra cartella Potete aiutarmi? Grazie |
06-04-2022, 11:47 | #2 |
Senior Member
Iscritto dal: Apr 2005
Messaggi: 3087
|
MA la data, è solo presente nel nome del file o anche negli attributi tipo "data ultima modifica"?
E poi, quel nome è fisso, o si può cambiare il nome che può avere? |
06-04-2022, 12:55 | #3 |
Member
Iscritto dal: Mar 2010
Messaggi: 30
|
la data dell'ultima modifica è diversa, ecco perchè mi serve come riferimento quella scritta nel nome del file.
il nome del file con la data è fisso non posso modificarlo. grazie |
06-04-2022, 15:13 | #4 |
Senior Member
Iscritto dal: Apr 2005
Messaggi: 3087
|
Al momento non ho assolutamente tempo per scriverlo e testarlo ma l'unica soluzione che vedo è
Rinominare massivamente i files nel formato americano Fare un sort Tirare fuori gli ultimi due elementi e rinominarli (e spostarli) Rinominare come in origine Quindi in powershell direi un qualcosa tipo $files = Get-ChildItem -File foreach($file in $files) { //lunghezza nome file $filename= $file.Name $len = $filename.length //quya estrai anno mese e giorno e li metti in catena nella forma YYYYMMDD ricordando di anteporre anche il nome file originale $nuovonome = $filename.SubString($len-8, 4) + ECC[...] $file | Rename-Item -NewName $nuovonome } Poi fai ordinamento https://stackoverflow.com/questions/...name-ascending e infine rinomini gli ultimi due elementi di quella lista.. |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:18.