Workstation online OnWorks Linux e Windows

Logo

Hosting online gratuito per workstation

<Precedenti | Contenuti | Succ.>

Espansione del tutore

Forse l'espansione più strana si chiama espansione del tutoreCon esso, è possibile creare più stringhe di testo da un modello contenente parentesi graffe. Ecco un esempio:



[io@linuxbox~]$ eco Anteriore-{A,B,C}-Posteriore

Davanti-A-Dietro Davanti-B-Dietro Davanti-C-Dietro

[io@linuxbox~]$ eco Anteriore-{A,B,C}-Posteriore

Davanti-A-Dietro Davanti-B-Dietro Davanti-C-Dietro


I modelli da espandere con rinforzo possono contenere una parte iniziale chiamata preambolo e una parte finale chiamata poscrittoL'espressione tra parentesi graffe può contenere un elenco di stringhe separate da virgole oppure un intervallo di numeri interi o singoli caratteri. Il pattern non può contenere spazi vuoti incorporati. Ecco un esempio che utilizza un intervallo di numeri interi:



[io@linuxbox~]$ eco Numero_{1..5}

Numero_1 Numero_2 Numero_3 Numero_4 Numero_5

[io@linuxbox~]$ eco Numero_{1..5}

Numero_1 Numero_2 Numero_3 Numero_4 Numero_5


Gli interi possono anche essere zero-imbottito così:



[io@linuxbox~]$ eco {01..15}

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15

[io@linuxbox~]$ eco {01..15}

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15


[io@linuxbox~]$ eco {001..15}

001 002 003 004 005 006 007 008 009 010 011 012 013 014 015

[io@linuxbox~]$ eco {001..15}

001 002 003 004 005 006 007 008 009 010 011 012 013 014 015

Una serie di lettere in ordine inverso:



[io@linuxbox~]$ eco {Z..A}

ZYXWVUTSRQPONMLKJIHGF EDCBA

[io@linuxbox~]$ eco {Z..A}

ZYXWVUTSRQPONMLKJIHGF EDCBA


Le espansioni delle parentesi graffe possono essere annidate:



[io@linuxbox~]$ eco a{A{1,2},B{3,4}}b

aA1b aA2b aB3b aB4b

[io@linuxbox~]$ eco a{A{1,2},B{3,4}}b

aA1b aA2b aB3b aB4b


A cosa serve? L'applicazione più comune è quella di creare elenchi di file o directory da creare. Ad esempio, se fossimo fotografi e avessimo una vasta collezione di immagini che volessimo organizzare in anni e mesi, la prima cosa che potremmo fare sarebbe creare una serie di directory denominate nel formato numerico "Anno-Mese". In questo modo, i nomi delle directory saranno ordinati cronologicamente. Potremmo digitare un elenco completo delle directory, ma sarebbe molto lavoro e anche questo è soggetto a errori. Invece, potremmo fare così:


Immagine

[io@linuxbox~]$ Foto mkdir

[io@linuxbox~]$ cd Foto

[me@linuxbox Foto]$ mkdir {2007..2009}-{01..12}

[me@linuxbox Foto]$ ls


2007-01

2007-07

2008-01

2008-07

2009-01

2009-07

2007-02

2007-08

2008-02

2008-08

2009-02

2009-08

2007-03

2007-09

2008-03

2008-09

2009-03

2009-09

2007-04

2007-10

2008-04

2008-10

2009-04

2009-10

2007-05

2007-11

2008-05

2008-11

2009-05

2009-11

2007-06

2007-12

2008-06

2008-12

2009-06

2009-12


Davvero furbo!


Il miglior sistema operativo cloud computing su OnWorks: