OVH Cloud OVH Cloud

Bash : créer des repertoires à partir d'une liste

7 réponses
Avatar
Olivier V
Bonjour,

J'ai un fichier texte qui contient à chaque ligne un intitulé.
Je voudrais créer un répertoire pour intitulé.

Comment faire ?

Début de mon fichier :

101. Groupes monogènes, groupes cycliques Exemples.
102. Permutations d?un ensemble fini, groupe symétrique. Applications.
103. Congruences dans Z. Anneau Z/nZ. Applications.
104. Propriétés élémentaires liées à la notion de nombre premier.
etc ...

Merci.

Olivier V

7 réponses

Avatar
JustMe
Olivier V a écrit
Bonjour,

J'ai un fichier texte qui contient à chaque ligne un intitulé.
Je voudrais créer un répertoire pour intitulé.

Comment faire ?

Début de mon fichier :

101. Groupes monogènes, groupes cycliques Exemples.
102. Permutations d?un ensemble fini, groupe symétrique. Applications.
103. Congruences dans Z. Anneau Z/nZ. Applications.
104. Propriétés élémentaires liées à la notion de nombre premier.
etc ...

Merci.

Olivier V


Une méthode crad :

cat fichier | sed 's/.*/mkdir "&"/' | sh

Evidement si y'a des " ou des ` ca plantera...

Avatar
lhabert
Olivier V :

J'ai un fichier texte qui contient à chaque ligne un intitulé.
Je voudrais créer un répertoire pour intitulé.


while read ligne; do mkdir "$ligne"; done < fichier_contenant_les_lignes

Avatar
JustMe
Luc Habert a écrit
Olivier V :

J'ai un fichier texte qui contient à chaque ligne un intitulé.
Je voudrais créer un répertoire pour intitulé.


while read ligne; do mkdir "$ligne"; done < fichier_contenant_les_lignes


J'aime mieux :

xargs -d 'n' mkdir < liste

C'est plus efficace et moins long a taper :-)


Avatar
Olivier V

J'aime mieux :

xargs -d 'n' mkdir < liste


J'ai une erreur :

[ z_liste_lecons]$ xargs -d 'n' mkdir < lecons-iso-8859-15.txt
xargs: option invalide -- d

Avatar
JustMe
Olivier V a écrit

J'aime mieux :

xargs -d 'n' mkdir < liste


J'ai une erreur :

[ z_liste_lecons]$ xargs -d 'n' mkdir < lecons-iso-8859-15.txt
xargs: option invalide -- d


dans ce cas : man xargs ;-)


Avatar
JustMe
(supersedes )

Olivier V a écrit

J'aime mieux :

xargs -d 'n' mkdir < liste


J'ai une erreur :

[ z_liste_lecons]$ xargs -d 'n' mkdir < lecons-iso-8859-15.txt
xargs: option invalide -- d


dans ce cas : man xargs ;-)

Ou alors

tr 'n' '00' < lecons-iso-8859-15.txt | xargs -0 mkdir


Avatar
Olivier V

while read ligne; do mkdir "$ligne"; done < fichier_contenant_les_lignes


Ça c'est impeccable.

Olivier V