Ho oltre 10.000 file che non hanno estensioni da versioni precedenti di Mac OS. Sono estremamente nidificati nella struttura dei file e hanno anche tutti i tipi di caratteri e formattazioni strane. Non hanno più tipi di file o codici creatori collegati a loro. Molti di questi file hanno testo nel file che mi permetterà di determinare le estensioni (ad esempio Word.Document.8 è nel testo di ogni file creato da quella versione di Word).
Ho trovato uno script che sembra funzionare per uno di questi tipi di file alla volta, ma cancella parti di nomi di file dopo caratteri nefasti, il che non va bene.
find . -type f -not -name "*.*" -print0 |\
xargs -0 file |\
grep 'Word.Document.8' |\
sed 's/:.*//' |\
xargs -I % echo mv % %.doc
Devo prima pulire i caratteri nei nomi dei file o gestirli a livello di codice con quelli della sceneggiatura per lasciarli uguali? Fintanto che non perdo alcuna informazione dai nomi dei file, non vedo alcun problema nell'eliminare barre e altri caratteri problematici. Inoltre, se pulisco i nomi dei file, è probabile che ci siano duplicati, quindi qualsiasi script di pulizia dovrebbe aggiungere qualcosa come "-1" prima dell'estensione per assicurarsi che nulla vada perso.
Non sono legato a questo script, ma è comprensibile, il che è un professionista. Mac OS X 10.6 è installato su questo file server, ma ho accesso a qualsiasi versione recente di OS X.
xargs -0 file | grep 'Word.Document.8'
se il file
comando non sta segnalando Word.Document.8
?
Word.Document.8
o stai dicendo che ifile MyTermPaper
rapportiWord.Document.8
per i tuoi documenti di Word?