[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: programmer en bash
- To: linux-31@culte.org
- Subject: Re: programmer en bash
- From: Jean-Marc MONGRELET <jeanmarc.mongrelet@free.fr>
- Date: Sat, 07 Jan 2023 01:00:30 +0100
- Authentication-results: pic2s.le-pic.org; dkim=pass (2048-bit key; unprotected) header.d=free.fr header.i=@free.fr header.a=rsa-sha256 header.s=smtp-20201208 header.b=SBzTspbQ; dkim-atps=neutral
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/simple; d=free.fr; s=smtp-20201208; t=1673049630; bh=cRA7dBYzr3s+Sfusp5j63hXq8ZA4uM3s9m1WYyoHZ2o=; h=Date:From:To:Subject:In-Reply-To:References:From; b=SBzTspbQi/NVHvbt5CTYo5qoCgRzWbHjljdk4b1yDduVo+8ZD/JnCszZqeG+QmwFf 4iEF7tYBS1x3v8wyJGpU4BlM9xuCbBTjW+GV57+YvPJgepGxc2G8bzTV3GV/1HDGJo YVOvRVmN2kiH3PkzFIW71klS9SezoTGE5ShOuAlkEP8ghcdfZF+op4aR22Ra8550AF dP+sFqxJP9747BGTohUkYBWZbzIXqVJ7vQ2wSTMkL2kLL7gkcXK/bEcVqkvVeLi68z xCXRbn3zIx2TukOtmyh0gMePueMbc8EWXcUGmkKVyUoEDNKx/8MP1tx0X9/1d4uNg7 0Ed/+Xer/622Q==
- In-reply-to: <959fad17-b580-98d4-6bf1-f425275211ec@free.fr>
- References: <94f56984-e411-0219-1301-ec376920f1d2@dodin.org> <2b6a5bf75a12d29edd42a6439052d25b@free.fr> <959fad17-b580-98d4-6bf1-f425275211ec@free.fr>
Bonsoir,
Je rentre de mon repas familial! :)
Le 06/01/2023 21:13, jdanield a écrit :
un peu brutal, mais la rédaction de la question est en cause. "les"
fichiers est interprété comme "tous les fichiers", et les répertoires
sont considérés comme des fichiers, ce qui n'est pas le but et entraîne
des effets curieux.
Effectivement... problème de rédaction de la question... J'ai donc
reformulé la question:
Question:
Peux-tu me réaliser un programme Bash dont le but est le suivant:
soit le répertoire courant avec des fichiers en vrac. Transférer
seulement ces fichiers sans les éventuels répertoires, dans des
répertoires ayant comme nom leur date de création dans le répertoire
courant.
Réponse:
Voici un exemple de programme Bash qui pourrait être utilisé pour
transférer seulement les fichiers du répertoire courant (sans les
éventuels répertoires) vers des sous-répertoires nommés d'après leur
date de création dans le répertoire courant :
https://paste.chapril.org/?bfcaeaeaa82899e0#Bb6Un7JYretAdGku9AC96iQtenCH9wppsjCFJhRRJaPn
Ce script commence par définir le répertoire de destination (qui est le
répertoire courant) en utilisant la commande "pwd". Il utilise ensuite
une boucle "for" pour parcourir chaque élément dans le répertoire
courant. Pour chaque élément, il vérifie si c'est un fichier en
utilisant la commande "if" et la commande "test" avec l'option "-f". Si
l'élément est un fichier, le script récupère la date de création en
utilisant la commande "stat" et en coupant la chaîne de sortie pour ne
conserver que la date. Il crée ensuite un sous-répertoire avec la date
de création du fichier s'il n'existe pas déjà, puis transfère le fichier
dans ce sous-répertoire en utilisant la commande "mv".
Ce script devrait transférer tous les fichiers du répertoire courant
Qu'est que je m'amuse! ;-)
Librement,
JM