Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Intel Core Ultra 5 235 e Core Ultra 5 225F, CPU Arrow Lake per la fascia media
Intel Core Ultra 5 235 e Core Ultra 5 225F, CPU Arrow Lake per la fascia media
Intel ha introdotto le CPU Core Ultra 200S "non K" a inizio 2025. I nuovi modelli stanno arrivando sul mercato e abbiamo avuto l'opportunità di provare le soluzioni Core Ultra 5 235 e Core Ultra 5 225F, confrontandole con il Core i5-14400F di precedente generazione. Come si comportano i processori Arrow Lake per la massa? Scopriamolo insieme.
Roborock Saros Z70: un braccio meccanico per fare ordine in casa
Roborock Saros Z70: un braccio meccanico per fare ordine in casa
Dotato di tutte le ultime innovazioni in tema di aspirazione della polvere e pulizia dei pavimenti di casa, Roborock Saros Z70 integra un braccio meccanico che promette di rendere più efficiente la pulizia di casa spostando oggetti presenti sul pavimento e riordinandoli. Una idea bella e pratica, ma che all'atto pratico è pressoché inutilizzabile e dalle ricadute nulle
I nuovi notebook Acer al debutto al Computex 2025
I nuovi notebook Acer al debutto al Computex 2025
Al Computex 2025 di Taipei Acer mostra una completa gamma di soluzioni notebook delle famiglie Swift, Aspire, Predator e Nitro pensati per gli utenti consumer oltre che per coloro che ricercano elevata potenza di elaborazione, per lavorare o per giocare. In base al modello troviamo piattaforme Intel, AMD oppure Qualcomm anche in abbinamento alle nuove GPU NVIDIA GeForce RTX 5000
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 01-10-2009, 14:16   #1
laba
Senior Member
 
L'Avatar di laba
 
Iscritto dal: Sep 2000
Città: Grugliasco (TO)
Messaggi: 1581
[bash] script per riniminare file con nomi casuali

Ho un lettore mp3 subacqueo che uso in piscina.
La modalità di riproduzione, però, è solo sequenziale, per cui alal lunga ascolto sempre la stessa lista.
M piacerebbe fare uno script che, lanciato, prenda i file della cartella e li rinomini a caso, lasciando solo inalterata l'estensione.

Qualcuno sa darmi un aiuto su dove trovare informazioni, o una base da cui partire? Purtroppo non mi sono mai cimentato nella programmazione..
__________________
"Senza deviazione non è possibile il progresso e quindi chiunque devia dalla norma viene considerato pazzo" (Frank Zappa) http://www.relov.it
laba è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2009, 15:09   #2
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Fammi capire, i file vengono riprodotti seguendo l'ordine del nome dei file?

Se è così basta che li ordini in maniera casuale e poi assegni loro un numero progressivo.

Non conosco la programmazione bash però ti posso suggerire una soluzione sotto windows tramite powershell.

Dettagli circa l'installazione di questo tool li trovi qui

http://www.hwupgrade.it/forum/showth...ght=powershell

e una volta scaricato il sw standalone powershell analyzer usi questo script dopo aver raggiunto la cartella che ti interessa col comando cd come col classico prompt dei comandi (attenzione che per salire di livello il comando è cd .. con uno spazio dopo cd).

Codice:
function out-random {
 $random = New-Object random
   $input | sort {$random.next()}
}
$i = 1;
gci | out-random | % {rename-Item $_.name -newname ([string]$i+"_"+$_.name) -whatif;
$i++;
}
Lo switch -whatif ti avvisa dell'operazione di rinomina che verrebbe eseguita. Nel caso sia filato tutto liscio rimuovi tale switch e rilancia il comando.

edit. Ah, non avevo pensato al padding.

Codice:
function out-random {
 $random = New-Object random
   $input | sort {$random.next()}
}
$i = 1;
gci | out-random | % {rename-Item $_.name -newname ("{0:D3}" -f $i+"_"+$_.name) -whatif;
$i++;
}
in questo modo anziche

1_nomefile, 2_nomefile ecc., avrai 001,002 e così via al fine dell'ordinamento.
[/code]

Ultima modifica di john_revelator : 01-10-2009 alle 15:39.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2009, 15:39   #3
zuper
Senior Member
 
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
potresti anche lasciare inalterato tutto il nome...e modificare un prefisso iniziale:

for file in `ls *.mp3`;do mv "$file" "$RANDOM"_"$file";done

oppure fai solo una cp in una cartella diversa, almeno la puoi generare altri file partendo da quelli originali.

così te li ordina per il numero RANDOM generato

-------------------------------------

se invece ti basta l'estensione...

for file in `ls *.mp3`;do mv "$file" "$RANDOM".mp3;done

così puoi rilanciarlo tutte le volte e ogni volta ti rinomina i files
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi.
L'una o l'altra inutile scandalizzarsi.[plutus]

Ultima modifica di zuper : 01-10-2009 alle 15:45.
zuper è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2009, 15:47   #4
zuper
Senior Member
 
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
anche se chiaramente consiglio vivamente di tenere il nome del file e aggiungere solo il prefisso iniziale...

dato che è tecnicamente possibile che il RANDOM ti generi sempre lo stesso numero
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi.
L'una o l'altra inutile scandalizzarsi.[plutus]
zuper è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2009, 15:51   #5
zuper
Senior Member
 
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
Quote:
Originariamente inviato da john_revelator Guarda i messaggi
CUT
seppur tecnicamente perfetta come sempre la tua soluzione...

mi permetto di "PUNTUALIZZARE" che mi pare una perdita di tempo fare tutta una funzione per sortare in ordine random per poi dare numeri ordinati

quando anche con il banalissimo dos hai la variabile %RANDOM%

PS: tanto lo so che non te la prendi se ti correggo
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi.
L'una o l'altra inutile scandalizzarsi.[plutus]
zuper è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2009, 18:31   #6
laba
Senior Member
 
L'Avatar di laba
 
Iscritto dal: Sep 2000
Città: Grugliasco (TO)
Messaggi: 1581
grazie mille ragazzi!!
Effettivamente avevo anche ventilato la possibilità di aggiungere solo un prefisso al nome file.
A questo punto dopo cena mi metto e provo la soluzione proposta, e vediamo se riesco a cambiare un po' l'ordine d'ascolto.
__________________
"Senza deviazione non è possibile il progresso e quindi chiunque devia dalla norma viene considerato pazzo" (Frank Zappa) http://www.relov.it
laba è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2009, 19:17   #7
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Quote:
Originariamente inviato da zuper Guarda i messaggi
seppur tecnicamente perfetta come sempre la tua soluzione...

mi permetto di "PUNTUALIZZARE" che mi pare una perdita di tempo fare tutta una funzione per sortare in ordine random per poi dare numeri ordinati

quando anche con il banalissimo dos hai la variabile %RANDOM%

PS: tanto lo so che non te la prendi se ti correggo
Ciao zuper. Ma figurati, ci mancherebbe. Non me la prendo di certo, anzi è sempre un piacere confrontarsi con altre persone e imparare da ognuno. Il fatto è che ormai sono powershell's addicted.

@laba: facci sapere come risolvi.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 01-10-2009, 20:47   #8
laba
Senior Member
 
L'Avatar di laba
 
Iscritto dal: Sep 2000
Città: Grugliasco (TO)
Messaggi: 1581
mi piace aver suscitato un sano confronto...

ho creato lo script (aggiungendo #!bin/bash come prima riga ovviamente) e dando il permesso di esecuzione.
Ecco però l'output:
Codice:
mv: impossibile eseguire stat di "/media/dati-sda/MUSICA/script/Sunday": Nessun file o directory
sono un po' troppo stanco per mettermi a capire qualcosa stasera: dormito troppo poco! Vi faccio sapere se riesco a capire da solo dove sta l'inghippo, sicuramente è una stupidaggine

p.s.:Nel frattempo, sapreste indicarmi qualche buona risorsa su cui iniziare a farmi un po' e ossa con la programmazione shell? Linux Magazine aveva una sezione dedicata, ma io dovrei partire proprio da zero zero
__________________
"Senza deviazione non è possibile il progresso e quindi chiunque devia dalla norma viene considerato pazzo" (Frank Zappa) http://www.relov.it
laba è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2009, 10:43   #9
zuper
Senior Member
 
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
1) ma nello script hai aggiunto un cd per andare nella cartella dove sta la musica?

2) ci sono effettivamente file mp3?
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi.
L'una o l'altra inutile scandalizzarsi.[plutus]
zuper è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2009, 10:45   #10
zuper
Senior Member
 
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
Quote:
Originariamente inviato da john_revelator Guarda i messaggi
Il fatto è che ormai sono powershell's addicted.
lo so...dovresti andare in una clinica per disintossicarti
__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi.
L'una o l'altra inutile scandalizzarsi.[plutus]
zuper è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2009, 12:02   #11
laba
Senior Member
 
L'Avatar di laba
 
Iscritto dal: Sep 2000
Città: Grugliasco (TO)
Messaggi: 1581
Quote:
Originariamente inviato da zuper Guarda i messaggi
1) ma nello script hai aggiunto un cd per andare nella cartella dove sta la musica?

2) ci sono effettivamente file mp3?
1) lo script lo lancio nella cartella stessa in cui ci sono i file
2) si, ci sono gli mp3

ho svelato l'arcano: così com'è lo script si inchioda se incontra nomi di file con gli spazi. Togliendoli o semplicemente sostituendoli son underscore tutto funziona a meraviglia, ecco ad esempio cosa mi ha generato:
9321_13968_3491_benharper-stealmy_kisses.mp3
32498_4301_21617_Blur-CountryHouse.mp3

mi sa che ne approfitto per far togliere gli spazi a tutti gli mp3 che ho, ricordo in passato di aver usato un tool del genere, devo solo ricordarmi quale fosse. Ma google aiuta sempre!
__________________
"Senza deviazione non è possibile il progresso e quindi chiunque devia dalla norma viene considerato pazzo" (Frank Zappa) http://www.relov.it
laba è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2009, 13:54   #12
zuper
Senior Member
 
Iscritto dal: Mar 2001
Città: PV Milano Nord
Messaggi: 3851
Quote:
Originariamente inviato da laba Guarda i messaggi
1) lo script lo lancio nella cartella stessa in cui ci sono i file
2) si, ci sono gli mp3

ho svelato l'arcano: così com'è lo script si inchioda se incontra nomi di file con gli spazi. Togliendoli o semplicemente sostituendoli son underscore tutto funziona a meraviglia, ecco ad esempio cosa mi ha generato:
9321_13968_3491_benharper-stealmy_kisses.mp3
32498_4301_21617_Blur-CountryHouse.mp3

mi sa che ne approfitto per far togliere gli spazi a tutti gli mp3 che ho, ricordo in passato di aver usato un tool del genere, devo solo ricordarmi quale fosse. Ma google aiuta sempre!
sorry nn mi era neanche venuto in mente che uno su *nix potesse avere nomi file con gli spaziiiiiiiiiiiiiiii



__________________
"W la foca, che dio la benedoca"
poteva risolvere tutto la sinistra negli anni in cui ha governato e non l'ha fatto. O sono incapaci o sta bene anche a "loro" cosi.
L'una o l'altra inutile scandalizzarsi.[plutus]
zuper è offline   Rispondi citando il messaggio o parte di esso
Old 03-10-2009, 10:59   #13
laba
Senior Member
 
L'Avatar di laba
 
Iscritto dal: Sep 2000
Città: Grugliasco (TO)
Messaggi: 1581
hai ragione, anche io sono contro gli spazi nei nomi file..però erano tutte canzoni già codificate così.
Poco male, ho girato un po' e ho trovato questo script, lo posto così se a qualcuno serve lo può usare:

Codice:
#!/bin/bash
#script che trasforma gli spazi nei file in underscore(_)
#Riesce a rinominare anche cartelle e sottocartelle
#Lascia invariate Maiuscole e minuscole
#se si vogliono cambiare maiuscole in minuscole basta cambiare
#tr 'A-Z ' 'A-Z_'` in tr 'A-Z ' 'a-z_'`
#Autore Lucio Zara (nick pennega)
#Sito www.spaghettilinux.org
#Mail pennega@gmail.com
#Versione 0.5
#Licenza GPL
#funzione usata per rinominare i file
RENAMEFILE() {
#$FILE non è necessario definirla come locale
local FILE=$1 #$1 è la 1° variabile passata alla funzione al momento della sua invocazione
#se non ho spazi nel nome file non lo devo rinominare
if echo $FILE | grep " " ; then
NEWNAMEFILE=`echo $FILE | tr 'A-Z ' 'A-Z_'`
#rinomino il file $NEWNAMEFILE contiene il nome del file
#con gli spazi traformati in _
mv "$FILE" $NEWNAMEFILE
fi
}
#questa è una funzione ricorsiva
RENAMEDIR() {
#$DIR è necessario definirla come locale
local DIR=$1
if echo $DIR | grep " " ; then
NEWNAMEDIR=`echo $DIR | tr 'A-Z ' 'A-Z_'`
mv "$DIR" $NEWNAMEDIR
else
#se non ci sono spazi assegno a $NEWNAMEDIR il valor di $DIR
NEWNAMEDIR=$DIR
fi
#Entro nella dir per verificare se ho altre dir o file
cd $NEWNAMEDIR
find -maxdepth 1 | while read d; do
#il comando find mi restituisce tra i risultati anche la dir corrente ./
#che non và considerata
if [ "$d" != "." ]; then
#verifico se $d è una directory
if [ -d "$d" ]; then
#se $d è una directory richiamo la funzione ricorsivamente
RENAMEDIR "$d"
else
#se $d non è una directory richiamo la funzione RENAMEFILE
RENAMEFILE "$d"
fi
fi
done
#Visto che prima sono entrato in $NEWNAMEDIR
adesso devo uscirne per poter continuare
cd ..
}
#MAIN
find -maxdepth 1 | while read l; do
#il comando find mi restituisce tra i risultati anche la dir corrente ./
#che non va considerata
if [ "$l" != "." ]; then
#verifico se ho una directory
if [ -d "$l" ]; then
#richiamo la funzione RENAMEDIR
RENAMEDIR "$l"
else
#richiamo la funzione RENAMEFILE
RENAMEFILE "$l"
fi
fi
done
__________________
"Senza deviazione non è possibile il progresso e quindi chiunque devia dalla norma viene considerato pazzo" (Frank Zappa) http://www.relov.it
laba è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Intel Core Ultra 5 235 e Core Ultra 5 225F, CPU Arrow Lake per la fascia media Intel Core Ultra 5 235 e Core Ultra 5 225F, CPU ...
Roborock Saros Z70: un braccio meccanico per fare ordine in casa Roborock Saros Z70: un braccio meccanico per far...
I nuovi notebook Acer al debutto al Computex 2025 I nuovi notebook Acer al debutto al Computex 202...
Nutanix .NEXT: così l'azienda vuole aiutare i clienti a limitare la dipendenza da Broadcom Nutanix .NEXT: così l'azienda vuole aiuta...
HUAWEI WATCH FIT 4 Pro: lo smartwatch che non ha rivali a questo prezzo! HUAWEI WATCH FIT 4 Pro: lo smartwatch che non ha...
Blue Origin vorrebbe far atterrare il la...
Il telescopio spaziale James Webb e il t...
Elon Musk mente agli investitori su Tesl...
Nuove osservazioni di due galassie in fa...
Una sonda e due Cubesat dell'ESA cercher...
Gotion ha avviato la produzione pilota d...
Honda riduce gli investimenti nell'elett...
Workstation, scambiatori di calore, serv...
Shopping intelligente: Adyen fotografa l...
Google presenta i nuovi occhiali smart A...
Mini ma completi: i nuovi Shelly Gen4 ar...
OVHcloud attiva un nuovo data center nel...
Dynatrace garantirà visibilit&agr...
Apple aprirà i suoi modelli AI ag...
be quiet!: silenzio assoluto anche per l...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 01:26.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v