Salve!
Stanotte vi parlo di un problema noto.
Prima ancora di proferire parole (inutili), faccio un esempio.
Apro il terminale e mi sposto nella cartella Documenti
$ cd Documenti
Per vederne il contenuto, lancio
$ ls
Viene fuori questo:
Firewall in linux.pdf La tabellina del quarantasette.txt
incontriamoci.pdf paura
Voglio dare un'occhiata al contenuto del documento di testo; perciò scrivo cat e poi, per semplificarmi la vita, vado a copiare il nome lungo
$ cat la tabellina del quarantasette.txt
dò invio ed ho questa spiacevole sorpresa
cat: La: No such file or directory
cat: tabellina: No such file or directory
cat: del: No such file or directory
cat: quarantasette.txt: No such file or directory
Vabbè, niente di nuovo; si sa che il terminale non accetta nomi con gli spazi. In questo caso avrei dovuto mettere il nome del file tra gli apici. Una vera seccatura.
Ecco, così:
cat 'La tabellina del quarantasette.txt'
Mi sono così ripromesso che da oggi, quando nomino un file, di qualsiasi genere, al posto degli spazi utilizzerò l'underscore (qui), cioè il trattino basso, in modo da concatenare le parole ed evitare di mettere i nomi lunghi tra gli apici.
E per i file già esistenti?
Per quelli userò rename.
Altro esempio.
Mio cugino, il cantante di famiglia, ha pubblicato un cd dal titolo TOB
Ovviamente ho scaricato le canzoni sulla mia scrivania nel formato mp3. :D
Ecco come si presentava l'album:
Per eliminare gli spazi tra le parole ed aggiungere l'underscore ho fatto così:
Sono andato nella cartella tob
$ cd Scrivania/tob
e ho lanciato la seguente riga di comando
$ rename 's/ /_/g' *.mp3
Ecco cosa è avvenuto:
In sintesi, per eliminare gli spazi dal nome di qualsiasi file e sostituirli con gli underscore, bisogna andare nella cartella in cui sono contenuti e lanciare la riga di cui sopra, senza dimenticare di cambiare l'estensione a secondo dei casi (*.txt, *.pdf, *.png, *.png, etc).
Ora ascolterò l'album di mio cugino con Sox (qui), senza preoccuparmi di apici, spazi e compagnia bella. :D
Ciao :)
L'Underscore è sempre valido, anzi su sitemi Linux è giusto usarlo! Io ogni singolo file lo creo con l'underscore.
RispondiEliminaDa terminale se vuoi leggere un file contenenti gli spazi, oltre ad usare gli apici, puoi fare così.
$ cat La\
e dopo dai un TAB così lui ti farà l'autocompletamento del testo, così da completare il nome del file in questo modo:
$ cat La\ tabellina\ del\ quarantasette.txt
Ma se converti blank2underscore è meglio e TUX ti ringrazierà per questo :). Oltre a rename ti ricordo che c'è detox.
@Lightuono
RispondiEliminaGrazie per il contributo. :D :D
Ciao luigi volevo segnalarti questo programma(argomento off topic)
RispondiEliminahttp://code.google.com/p/trash-cli/
il cestino disponibile da terminale:
cancellazione di un file:
trash nome-file
elenco dei file presenti nel cestino
list-trash o trash-list
per recuperare un documento:
restore-trash
e scegliere premendo il relativo numero, l'elemento da ripristinare, cosa ne pensi ?
@Aniello
RispondiEliminaSei stato troppo gentile :))
Da come lo descrivi sembra buono
Stasera lo provo. Grazie