Bonjour,
J’essaie de récupérer une liste des fichiers modifiés (depuis X min) dans un répertoire.
Exemple (je vous laisse les options de la commande find
pour information personnelle :
find "/home/USER/" ! -path "/home/USER/ignore/*" -type f \( -iname "*" -or -iname ".*" ! -iname ".afileignore" \) -mmin -60 -exec ls -lh {} \; | awk '{print $9":"$5}')
Qui me ressort :
/home/USER/my_file.txt:85K
/home/USER/my_file_second.txt:195K
Par contre si j’ai un fichier qui contient des espaces çà bug.
Exemple : « /home/USER/my_file_avec espace.txt
» ; ma commande find
ne fonctionne pas , elle me retourne :
/home/USER/my_file_avec
Qui a une solution ?
Je souhaite garder la taille des fichiers.
Merci.
Bonne journée.
Romain.
Note de Moi-même :
TEST
root@lb2.ww2:~ $ find /var/pro/web_public/ -mmin -1200 -exec ls -lh {} \;
total 679M
-rw-r--r-- 1 1000 1000 17K Feb 5 2024 "Capture d'écran 2024-02-05 195622.png"
root@lb2.ww2:~ $ find /var/pro/web_public/ -mmin -1200 -exec ls -lh {} \; | sed -f /root/url_escape.sed
total%20679M
-rw-r--r--%201%201000%201000%20%20%2017K%20Feb%20%205%20%202024%20Capture%20d'écran%202024-02-05%20195622.png
le fichier : « cat url_escape.sed
» : CF.
# sed url escaping
s:%:%25:g
s: :%20:g
s:<:%3C:g
s:>:%3E:g
s:#:%23:g
s:{:%7B:g
s:}:%7D:g
s:|:%7C:g
s:\\:%5C:g
s:\^:%5E:g
s:~:%7E:g
s:\[:%5B:g
s:\]:%5D:g
s:`:%60:g
s:;:%3B:g
s:/:%2F:g
s:?:%3F:g
s^:^%3A^g
s:@:%40:g
s:=:%3D:g
s:&:%26:g
s:\$:%24:g
s:\!:%21:g
s:\*:%2A:g
C’n’est pas encore çà. Je cherche…