2010-09-25 7 views

Respuesta

4

La forma de expresión gama de expansión de llaves se utiliza en lugar de seq en un bucle for:

for i in {1..100} 
do 
    something # 100 times 
done 
2

por ejemplo, hacer una copia de seguridad de todos sus archivos en un directorio:

for i in * ; do 
    cp "$i"{,.bak} 
done 
+0

Eso no puede funcionar. –

+0

Lo siento, moví {, .bak} fuera de la parte citada. fue un error tipográfico – Benoit

+0

Ok, eso tiene más sentido. De hecho, hasta ahora no me había dado cuenta de que los componentes de la ruta no necesitan existir. –

0

Se utiliza cada vez que desee encontrar equivalencias en las múltiples opciones. Por ejemplo,

ls src/{Debug,Release}/*.o # List all .o files in the Debug and Release directories. 
2

En bash, se utiliza la expansión de llaves si desea crear un rango, por ejemplo,

for r in {0..100}

for r in {0..10..2} paso #with de 2

for z in {a..z}

En lugar de utilizar comandos externos tales como seq 0 100. Además, la expansión de llaves se puede usar para listar tipos de archivos, por ej.

for file in *.{txt,jpg}.

Lista de todos los archivos que tienen extensiones txt y jpg.

Cuestiones relacionadas