Ho molti file che hanno uno schema condiviso nel nome che vorrei rimuovere. Ad esempio ho i file "a_file000.tga" e "another_file000.tga". Mi piacerebbe fare un'operazione su quei file che rimuoverebbero il pattern "000" dai loro nomi risultando nei nuovi nomi, "a_file.tga" e "another_file.tga".Come rimuovere i caratteri specifici dai nomi dei file utilizzando BASH
risposta
provare questo (questo funziona in pianura vecchio Bourne sh
così):
for i in *000.tga
do
mv "$i" "`echo $i | sed 's/000//'`"
done
Entrambi gli argomenti sono avvolti in citazioni per sostenere spazi in i nomi dei file.
Bash può fare sed
-come sostituzioni:
for file in *; do mv "${file}" "${file/000/}"; done
funziona bene su OS X (10.6.8). Pratico e succinto. Grazie. – jamesnotjim
Bello, puoi spiegare la funzione di "{"? – efrem
@efrem: le parentesi graffe rappresentano un delimitatore opzionale per i nomi delle variabili e sono necessarie per le estensioni dei parametri. Vedi il [Bash Manual] (https://www.gnu.org/software/bash/manual/bashref.html#Shell-Parameter-Expansion) per ulteriori informazioni. –
una soluzione non-bash, perché so due manifesti veloci hanno già coperto che:
C'è un eccellente programma di breve perl chiamato rename
che viene installato di default su alcuni sistemi (altri hanno un programma di rename meno utile) . Esso consente di utilizzare regex perl per la ridenominazione, per esempio:
rename 's/000//' *000*.tga
#!/bin/bash
ls | while read name; do
echo mv $name ${name/$1//}
done
- 1. Come rimuovere i caratteri CTRL-A dai file usando SED?
- 2. bash: Tronca nomi dei file, mantenendo uniche
- 3. rimuovere caratteri specifici da NSString
- 4. Rimuovere gli spazi dai nomi di file nella cartella
- 5. Bash: Ordinare i file da 'trovare' dai contenuti
- 6. Paperclip pulisce automaticamente i nomi dei file?
- 7. Quali caratteri devo sfuggire/disinfettare per i nomi dei file?
- 8. Come rimuovere '.' dai nomi delle colonne in un dataframe?
- 9. Come ottenere i nomi dei fogli dai file XLS senza caricare l'intero file?
- 10. Metodi per rimuovere caratteri specifici dalla stringa?
- 11. script Bash per rimuovere principali spazi bianchi dal file nomi
- 12. Come ottenere i nomi dei file?
- 13. Come rimuovere i breakpoint del debugger PyDev dai file cancellati?
- 14. Ottieni i nomi dei segnali dai numeri in Python
- 15. Script Bash per rimuovere tutti i file e le directory eccetto quelli specifici
- 16. Come rimuovere i nomi storti dei lambda in C++?
- 17. Come rimuovere i nomi dei rami cancellati dal completamento automatico?
- 18. comando bash per rimuovere gli zeri iniziali da tutti i nomi di file
- 19. Rimozione dei caratteri NULL dai byte
- 20. Come creare cartelle usando i nomi dei file e quindi spostare i file in cartelle?
- 21. Come rimuovere più file in C usando i caratteri jolly?
- 22. Come posso rimuovere i nomi file di Windows in Java?
- 23. Caratteri indice specifici locali
- 24. Visual Studio - Utilizzare i nomi dei tipi di caratteri maiuscoli
- 25. scandir - ordina i nomi dei file numerici
- 26. Come rimuovere i caratteri speciali html?
- 27. Come recuperare i file dalla libreria musicale Windows Phone (8.1) utilizzando i nomi dei percorsi?
- 28. Script di Bash per rimuovere la quantità "x" di caratteri alla fine di più nomi di file in una directory?
- 29. Quali sono i caratteri legali/consentiti per i nomi dei file del server Web?
- 30. I caratteri in PHP sono influenzati dagli spazi dei nomi?
+1 per la maggior parte delle soluzioni portatili (e perché sono in esecuzione su un upscote troppo basso per continuare a fare inversione di tutte le buone risposte). –