Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di maxtn
    Registrato dal
    Jul 2002
    Messaggi
    712

    Script per sostituire spazi da nomi file

    Qualcuno mi sa dire dove sbaglio?
    devo rinominare i file di una cartella sostituendo gli spazi dal nomefile con un underscore.


    #!/bin/bash
    cd /cartellafile
    for i in $(ls *.pdf); do
    tr -s '[:space:]' '[_]' <$i>
    done


    lo script mi da:
    ./rimuovi_spazi: line 4: syntax error near unexpected token `newline'
    ./rimuovi_spazi: line 4: `tr -s '[:space:]' '[_]' <$i>'
    Ubuntu 10.10 x86_64

  2. #2
    rename " " "_" *
    Ci sono cose che non si possono sapere. Per tutto il resto c'è man

    Prima di fare domande stupide: 1) googla 2) leggi le manpages 3) sparati.

  3. #3
    Utente di HTML.it L'avatar di maxtn
    Registrato dal
    Jul 2002
    Messaggi
    712
    Però mi toglie solo il primo spazio...

    prova file 1.pdf
    diventa
    prova_file 1.pdf
    Ubuntu 10.10 x86_64

  4. #4
    Utente di HTML.it L'avatar di cacao74
    Registrato dal
    Jan 2005
    Messaggi
    2,570
    Non è corretto l'utilizzo di 'tr'.
    codice:
    [cacao74@winnie tmp]$ for i in 0 1 2 3 4; do touch "file prova $i.pdf"; done
    
    [cacao74@winnie tmp]$ ls -l file*
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file prova 0.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file prova 1.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file prova 2.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file prova 3.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file prova 4.pdf
    
    [cacao74@winnie tmp]$ for file in ./file*.pdf; do \
    nuovo=`echo "$file" | \
    tr -s ' ' '_'` \
    mv "$file" "$nuovo" \
    done
    
    [cacao74@winnie tmp]$ ls -l file*
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file_prova_0.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file_prova_1.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file_prova_2.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file_prova_3.pdf
    -rw-r--r--  1 cacao74 users 0 2006-02-16 22:27 file_prova_4.pdf
    ciao
    slack? smack!

  5. #5
    codice:
    for i in *.pdf; do 
    newname=$(echo "$i" | sed -e 's/\ /_/g'); 
    echo $newname; 
    mv "$i" "$newname"; 
    done
    Esempio pratico qui:
    http://www.openclose.it/html/ipod_on...ast_howto.html

    Are you alive?
    No, but I was written with LOVE. A new scripting language.
    www.frequenze.it

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.