Je souhaite supprimer tous les répertoires en dehors du répertoire de la date en cours. noms de répertoire sont prises comme la date dans ce format MM-JJ-AA si le nom du répertoire estSupprimer les dossiers en fonction du nom comme date en mm/jj/aa dans bash script
10-12-17
10-11-17
10-10-17 .. etc
#!/bin/bash
echo Hello World!
one_day=$(date -d "1 days ago" +%m%d%y)
for f in [0-9][0-9]-[0-9][0-9]-[0-9][0-9]; do
[ -d "$f" ] || continue
(($f < $one_day)) && sudo rm -rf "$f"
done
Pendant l'exécution de mon script, je reçois l'erreur suivante:
./script.sh: line 9: ((: 10-08: value too great for base (error token is "08")
./script.sh: line 9: ((: 10-09: value too great for base (error token is "09")
Avez-vous accepté les bonnes nouvelles de ISO8601 dans votre cœur aujourd'hui? https://en.wikipedia.org/wiki/ISO_8601 –
** s = $ (date +% m-% d-% y); mv $ s. $ s; rm -rf [0-9] [0-9] - [0-9] [0-9] - [0-9] [0-9]; mv. $ s $ s ** #pourquoi ne faites-vous pas cela? –