Tengo una carpeta con aproximadamente 1.700 archivos. Todos son nombrados como 1.txt
o 1497.txt
, etc. Me gustaría cambiar el nombre de todos los archivos para que todos los nombres de los archivos tengan cuatro dígitos.Script de shell de Linux para agregar ceros a nombres de archivo
Es decir, 23.txt
se convierte en 0023.txt
.
¿Qué es un script de shell que hará esto? O una pregunta relacionada: ¿Cómo uso grep para que coincida solo con las líneas que contienen \d.txt
(es decir, un dígito, luego un punto y luego las letras txt
)?
Esto es lo que tengo hasta ahora:
for a in [command i need help with]
do
mv $a 000$a
done
Básicamente, ejecute dicho tres veces, con comandos allí para encontrar un dígito, dos dígitos, y tres nombres de archivo dígitos (con el número de ceros iniciales cambiado).
Usted debe etiquetar este con la cáscara está utilizando – meagar
duplicado posible de [script de Bash para rellenar los nombres de los archivos] (http://stackoverflow.com/questions/55754/bash-script-to-pad-file-names) –
@CiroSantilli, por cierto, tuve a alguien recientemente empujar a un engañado que se cerró con eso como la lógica para rellenar los números principales y la lógica para rellenar los números más adelante en un nombre difiere un tanto. (En consecuencia, https://stackoverflow.com/questions/46993470/padding-filenames-with-zeros-in-bash está actualmente marcado como una víctima de esta respuesta, y * no * un engañado de eso). –