Devant récupérer des fichiers (photos) au sein d'une arborescence
anarchique et les reclasser dans autre arborescence cette fois dotée
d'une certaine logique (année/mois/jour/) me voilà lancer dans un script
bash.
La première partie se règle assez facilement :
8<---
cd "$origine"
find . -type f -exec cp '{}' $cible \;
8<---
La deuxième phase est plus laborieuse :
8<---
cd "${cible}"
for photo in *
do
if [ ! -d "$photo" ] ; then
stat -t '%Y%m%d' "$photo" | {
read ch01 ch02 ch03 ch04 ch05 ch06 ch07 ch08 ch09 \
ch10 ch11 ch12 ch13 ch14 ch15
annee=${ch12:1:4} ; if [ ! -d "$annee" ] ; then mkdir "$annee" ; fi
cd "$annee"
mois=${ch12:5:2} ; if [ ! -d "$mois" ] ; then mkdir "$mois" ; fi
cd "$mois"
jour=${ch12:7:2} ; if [ ! -d "$jour" ] ; then mkdir "$jour" ; fi
mv "${cible}/${photo}" "${cible}/${annee}/${mois}/${jour}/${photo}"
}
fi
done
8<---
Tout a marché selon mes désirs, mais j'aimerais savoir :
1- comment optimiser et alléger la deuxième partie
2- comment l'intégrer à la première. J'ai bien essayé de la glisser
entre "-exec" et "\;" mais sans succès :(
Merci par avance de vos lumières.
--
Jo
"Don't suffer from insanity, enjoy every minute of it."
Il parlait certainement du format de date, mais bon... On veut faire de la ligne de commande et on est pas capable de modifier un affichage......
Aaahhhhhhh, okokokok
Euh... oui, ça se transforme quand même et il ne faut pas s'étonner qu'une société américaine utilise ce genre de format, quand même...
Tout se perd mon bon monsieur... Ah... Dans l'temps... On se plaignait pas autant...
Oui, c'était mieux avaaaant...
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
Il parlait certainement du format de date, mais bon... On veut faire de
la ligne de commande et on est pas capable de modifier un
affichage......
Aaahhhhhhh, okokokok
Euh... oui, ça se transforme quand même et il ne faut pas s'étonner
qu'une société américaine utilise ce genre de format, quand même...
Tout se perd mon bon monsieur... Ah... Dans l'temps... On se plaignait
pas autant...
Oui, c'était mieux avaaaant...
--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.
Il parlait certainement du format de date, mais bon... On veut faire de la ligne de commande et on est pas capable de modifier un affichage......
Aaahhhhhhh, okokokok
Euh... oui, ça se transforme quand même et il ne faut pas s'étonner qu'une société américaine utilise ce genre de format, quand même...
Tout se perd mon bon monsieur... Ah... Dans l'temps... On se plaignait pas autant...
Oui, c'était mieux avaaaant...
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
laurent.pertois
Vincent Lefevre <vincent+ wrote:
Dans l'article <1imetc5.13toyna1vcjwfsN%, Laurent Pertois écrit:
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
Vincent Lefevre <vincent+news@vinc17.org> wrote:
Dans l'article <1imetc5.13toyna1vcjwfsN%laurent.pertois@alussinan.org>,
Laurent Pertois <laurent.pertois@alussinan.org> écrit:
--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
Vincent Lefevre
Dans l'article <1imopsl.63r9m3rxhq5iN%, Anonyme écrit:
On se demande pourquoi tu utilise un ordinateur alors... Tous les Mac sont des merdes américaines, Windows est une merde américaine, et la plupart des développeurs bossant sur Linux sont également américain, on peut donc dire que Linux est une sous merde américaine.
Dans l'article <1imopsl.63r9m3rxhq5iN%jayce@mosx.org>,
Anonyme <jayce@mosx.org> écrit:
On se demande pourquoi tu utilise un ordinateur alors... Tous les Mac
sont des merdes américaines, Windows est une merde américaine, et la
plupart des développeurs bossant sur Linux sont également américain, on
peut donc dire que Linux est une sous merde américaine.
Dans l'article <1imopsl.63r9m3rxhq5iN%, Anonyme écrit:
On se demande pourquoi tu utilise un ordinateur alors... Tous les Mac sont des merdes américaines, Windows est une merde américaine, et la plupart des développeurs bossant sur Linux sont également américain, on peut donc dire que Linux est une sous merde américaine.
Dans l'article <1imopsl.63r9m3rxhq5iN%, Anonyme écrit:
> On se demande pourquoi tu utilise un ordinateur alors... Tous les Mac > sont des merdes américaines, Windows est une merde américaine, et la > plupart des développeurs bossant sur Linux sont également américain, on > peut donc dire que Linux est une sous merde américaine.
Non, Linux respecte les normes internationales.
Pas pour tout...
-- Anonyme ( jayce <@> mosx.org ) ********* MosX.org <http://www.mosx.org/> ********* Ce message est sous licence Creative Commons "by-nc-sa-2.0" <http://creativecommons.org/licenses/by-nc-sa/2.0/fr/>
Vincent Lefevre <vincent+news@vinc17.org> wrote:
Dans l'article <1imopsl.63r9m3rxhq5iN%jayce@mosx.org>,
Anonyme <jayce@mosx.org> écrit:
> On se demande pourquoi tu utilise un ordinateur alors... Tous les Mac
> sont des merdes américaines, Windows est une merde américaine, et la
> plupart des développeurs bossant sur Linux sont également américain, on
> peut donc dire que Linux est une sous merde américaine.
Non, Linux respecte les normes internationales.
Pas pour tout...
--
Anonyme ( jayce <@> mosx.org )
********* MosX.org <http://www.mosx.org/> *********
Ce message est sous licence Creative Commons "by-nc-sa-2.0"
<http://creativecommons.org/licenses/by-nc-sa/2.0/fr/>
Dans l'article <1imopsl.63r9m3rxhq5iN%, Anonyme écrit:
> On se demande pourquoi tu utilise un ordinateur alors... Tous les Mac > sont des merdes américaines, Windows est une merde américaine, et la > plupart des développeurs bossant sur Linux sont également américain, on > peut donc dire que Linux est une sous merde américaine.
Non, Linux respecte les normes internationales.
Pas pour tout...
-- Anonyme ( jayce <@> mosx.org ) ********* MosX.org <http://www.mosx.org/> ********* Ce message est sous licence Creative Commons "by-nc-sa-2.0" <http://creativecommons.org/licenses/by-nc-sa/2.0/fr/>
laurent.pertois
Vincent Lefevre <vincent+ wrote:
Dans l'article <1imouyq.1u5hrtpcrgm3bN%, Laurent Pertois écrit:
Et non, linux n'est pas une option, il n'y a pas GetFileInfo et les outils fournis ne sont pas sûrs de fournir la date de création comme tu l'as toi-même remarqué.
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.
Vincent Lefevre <vincent+news@vinc17.org> wrote:
Dans l'article <1imouyq.1u5hrtpcrgm3bN%laurent.pertois@alussinan.org>,
Laurent Pertois <laurent.pertois@alussinan.org> écrit:
Et non, linux n'est pas une option, il n'y a pas GetFileInfo et les
outils fournis ne sont pas sûrs de fournir la date de création comme tu
l'as toi-même remarqué.
--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.
Et non, linux n'est pas une option, il n'y a pas GetFileInfo et les outils fournis ne sont pas sûrs de fournir la date de création comme tu l'as toi-même remarqué.
-- Politically Correct Unix - UTILITIES The "touch" command has been removed from the standard distribution due to its inappropriate use by high-level managers.