#!/bin/bash
# liste des noms de r̓©pertoire ̓ mettre ̓ jour s̓©par̓© d'un pipe :"
#
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"
echo "Liste des exclusions : "
echo "$DIR"
while true; do
read -p "Etes vous d'accord avec la liste d'exclusion ?" on
case $on in
[Oo]* ) echo "Suppression en cours..." ;
find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf > delmozilla.log;
#!/bin/bash
# liste des noms de r̓©pertoire ̓ mettre ̓ jour s̓©par̓© d'un pipe :"
#
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"
echo "Liste des exclusions : "
echo "$DIR"
while true; do
read -p "Etes vous d'accord avec la liste d'exclusion ?" on
case $on in
[Oo]* ) echo "Suppression en cours..." ;
find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf > delmozilla.log;
#!/bin/bash
# liste des noms de r̓©pertoire ̓ mettre ̓ jour s̓©par̓© d'un pipe :"
#
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"
echo "Liste des exclusions : "
echo "$DIR"
while true; do
read -p "Etes vous d'accord avec la liste d'exclusion ?" on
case $on in
[Oo]* ) echo "Suppression en cours..." ;
find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf > delmozilla.log;
Bonjour David,
David Martin, on 2020-11-26 15:40:59 +0100:#!/bin/bash
Il vaut mieux arr̓ªter le script imm̓©diatement si une ̓©tape
finit en erreur de mani̓¨re inattendue. Or ce n'est pas le
comportement par d̓©faut du shell. Pour activer ce comportement,
une bonne pratique est d'activer cette option "-e" quasiment
juste apr̓¨s le shebang :
set -e
Les options -v et -x sont int̓©ressantes ̓ utiliser au moment de
r̓©diger le script, pour voir quand se lancent les commandes, et
v̓©rifier que les variables ont des valeurs coh̓©rentes,
respectivement.
[...]# liste des noms de r̓©pertoire ̓ mettre ̓ jour s̓©par̓© d'un pipe :"[...]
#
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"echo "Liste des exclusions : "
echo "$DIR"
Je pense qu'̓ ce point du script, ce pourrait ̓ªtre une bonne
id̓©e de lancer :
find -iname Mozilla | egrep -v "$DIR"
̓‡a devrait vous permettre d'y voir plus clair dans ce qui va
effectivement sauter, au lieu de juste voir quelle expression
est utilis̓©e pour le filtrage. En tant qu'utilisateur du
script, je pense que je pr̓©f̓¨re voir ce qui va sauter, plut̓´t
que de voir comment.
̓‰ventuellement, vous pouvez enregistrer la liste dans un
fichier, avec "tee", pour la r̓©utiliser au moment d'effacer, au
lieu de relancer un "find", co̓»teux en op̓©rations d'entr̓©es et
sorties, une seconde fois.while true; dodelmozilla.log;
read -p "Etes vous d'accord avec la liste d'exclusion ?" on
case $on in
[Oo]* ) echo "Suppression en cours..." ;
find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf >
^~~~~^
Je serais ̓ votre place, je prot̓¨gerais la variable avec des
double quotes, comme ci-dessus. DIR est amen̓©e ̓ stocker des
expressions rationelles, et ce genre de contenu peut facilement
̓ªtre interpr̓©t̓© par le shell d'une fa̓§on inattendue.
Je ne sais pas si ̓§a va r̓©soudre votre probl̓¨me, mais si ̓§a peut
vous aider ̓ y voir plus clair... Plus largement, ̓§a vaudrait
le coup de voir pourquoi ce genre de m̓©nage est n̓©cessaire.
Admettons que je sois utilisateur de vos syst̓¨mes, s'il devait y
avoir une passe de cet outil dans mon dos, ̓§a m'emb̓ªterait
beaucoup de perdre mon historique.
Bonne fin de journ̓©e, :)
--
̓‰tienne Mollier
Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
Sent from /dev/pts/1, please excuse my verbosity.
Bonjour David,
David Martin, on 2020-11-26 15:40:59 +0100:
> #!/bin/bash
Il vaut mieux arr̓ªter le script imm̓©diatement si une ̓©tape
finit en erreur de mani̓¨re inattendue. Or ce n'est pas le
comportement par d̓©faut du shell. Pour activer ce comportement,
une bonne pratique est d'activer cette option "-e" quasiment
juste apr̓¨s le shebang :
set -e
Les options -v et -x sont int̓©ressantes ̓ utiliser au moment de
r̓©diger le script, pour voir quand se lancent les commandes, et
v̓©rifier que les variables ont des valeurs coh̓©rentes,
respectivement.
[...]
> # liste des noms de r̓©pertoire ̓ mettre ̓ jour s̓©par̓© d'un pipe :"
> #
> DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"
[...]
> echo "Liste des exclusions : "
> echo "$DIR"
Je pense qu'̓ ce point du script, ce pourrait ̓ªtre une bonne
id̓©e de lancer :
find -iname Mozilla | egrep -v "$DIR"
̓‡a devrait vous permettre d'y voir plus clair dans ce qui va
effectivement sauter, au lieu de juste voir quelle expression
est utilis̓©e pour le filtrage. En tant qu'utilisateur du
script, je pense que je pr̓©f̓¨re voir ce qui va sauter, plut̓´t
que de voir comment.
̓‰ventuellement, vous pouvez enregistrer la liste dans un
fichier, avec "tee", pour la r̓©utiliser au moment d'effacer, au
lieu de relancer un "find", co̓»teux en op̓©rations d'entr̓©es et
sorties, une seconde fois.
> while true; do
> read -p "Etes vous d'accord avec la liste d'exclusion ?" on
> case $on in
> [Oo]* ) echo "Suppression en cours..." ;
> find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf >
delmozilla.log;
^~~~~^
Je serais ̓ votre place, je prot̓¨gerais la variable avec des
double quotes, comme ci-dessus. DIR est amen̓©e ̓ stocker des
expressions rationelles, et ce genre de contenu peut facilement
̓ªtre interpr̓©t̓© par le shell d'une fa̓§on inattendue.
Je ne sais pas si ̓§a va r̓©soudre votre probl̓¨me, mais si ̓§a peut
vous aider ̓ y voir plus clair... Plus largement, ̓§a vaudrait
le coup de voir pourquoi ce genre de m̓©nage est n̓©cessaire.
Admettons que je sois utilisateur de vos syst̓¨mes, s'il devait y
avoir une passe de cet outil dans mon dos, ̓§a m'emb̓ªterait
beaucoup de perdre mon historique.
Bonne fin de journ̓©e, :)
--
̓‰tienne Mollier <etienne.mollier@mailoo.org>
Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
Sent from /dev/pts/1, please excuse my verbosity.
Bonjour David,
David Martin, on 2020-11-26 15:40:59 +0100:#!/bin/bash
Il vaut mieux arr̓ªter le script imm̓©diatement si une ̓©tape
finit en erreur de mani̓¨re inattendue. Or ce n'est pas le
comportement par d̓©faut du shell. Pour activer ce comportement,
une bonne pratique est d'activer cette option "-e" quasiment
juste apr̓¨s le shebang :
set -e
Les options -v et -x sont int̓©ressantes ̓ utiliser au moment de
r̓©diger le script, pour voir quand se lancent les commandes, et
v̓©rifier que les variables ont des valeurs coh̓©rentes,
respectivement.
[...]# liste des noms de r̓©pertoire ̓ mettre ̓ jour s̓©par̓© d'un pipe :"[...]
#
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"echo "Liste des exclusions : "
echo "$DIR"
Je pense qu'̓ ce point du script, ce pourrait ̓ªtre une bonne
id̓©e de lancer :
find -iname Mozilla | egrep -v "$DIR"
̓‡a devrait vous permettre d'y voir plus clair dans ce qui va
effectivement sauter, au lieu de juste voir quelle expression
est utilis̓©e pour le filtrage. En tant qu'utilisateur du
script, je pense que je pr̓©f̓¨re voir ce qui va sauter, plut̓´t
que de voir comment.
̓‰ventuellement, vous pouvez enregistrer la liste dans un
fichier, avec "tee", pour la r̓©utiliser au moment d'effacer, au
lieu de relancer un "find", co̓»teux en op̓©rations d'entr̓©es et
sorties, une seconde fois.while true; dodelmozilla.log;
read -p "Etes vous d'accord avec la liste d'exclusion ?" on
case $on in
[Oo]* ) echo "Suppression en cours..." ;
find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf >
^~~~~^
Je serais ̓ votre place, je prot̓¨gerais la variable avec des
double quotes, comme ci-dessus. DIR est amen̓©e ̓ stocker des
expressions rationelles, et ce genre de contenu peut facilement
̓ªtre interpr̓©t̓© par le shell d'une fa̓§on inattendue.
Je ne sais pas si ̓§a va r̓©soudre votre probl̓¨me, mais si ̓§a peut
vous aider ̓ y voir plus clair... Plus largement, ̓§a vaudrait
le coup de voir pourquoi ce genre de m̓©nage est n̓©cessaire.
Admettons que je sois utilisateur de vos syst̓¨mes, s'il devait y
avoir une passe de cet outil dans mon dos, ̓§a m'emb̓ªterait
beaucoup de perdre mon historique.
Bonne fin de journ̓©e, :)
--
̓‰tienne Mollier
Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
Sent from /dev/pts/1, please excuse my verbosity.
David Martin a ̓©crit :La variable $DIR me sort bien ce qu'elle contient quand je fais un
echo dessus, mais la commande egrep ne fonctionne pas avec la
variable.
Il manque des parenth̓¨se en d̓©but et fin de s̓©quence. Il faut
remplacer :
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"
par :
DIR="(0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail)"
voire par :
DIR="([0-9]|netlogon|backup|eole|mail)"
S̓©bastien
--
S̓©bastien Dinot,
http://www.palabritudes.net/
Ne go̓»tez pas au logiciel libre, vous ne pourriez plus vous en passer !
David Martin a ̓©crit :
> La variable $DIR me sort bien ce qu'elle contient quand je fais un
> echo dessus, mais la commande egrep ne fonctionne pas avec la
> variable.
Il manque des parenth̓¨se en d̓©but et fin de s̓©quence. Il faut
remplacer :
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"
par :
DIR="(0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail)"
voire par :
DIR="([0-9]|netlogon|backup|eole|mail)"
S̓©bastien
--
S̓©bastien Dinot, sebastien.dinot@free.fr
http://www.palabritudes.net/
Ne go̓»tez pas au logiciel libre, vous ne pourriez plus vous en passer !
David Martin a ̓©crit :La variable $DIR me sort bien ce qu'elle contient quand je fais un
echo dessus, mais la commande egrep ne fonctionne pas avec la
variable.
Il manque des parenth̓¨se en d̓©but et fin de s̓©quence. Il faut
remplacer :
DIR="0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail"
par :
DIR="(0|1|2|3|4|5|6|7|8|9|netlogon|backup|eole|mail)"
voire par :
DIR="([0-9]|netlogon|backup|eole|mail)"
S̓©bastien
--
S̓©bastien Dinot,
http://www.palabritudes.net/
Ne go̓»tez pas au logiciel libre, vous ne pourriez plus vous en passer !
find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf >^~~~~^
delmozilla.log;
Je serais Í votre place, je protègerais la variable avec des
double quotes, comme ci-dessus. DIR est amenée Í stocker des
expressions rationelles, et ce genre de contenu peut facilement
être interprété par le shell d'une façon inattendue.
> find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf >
> delmozilla.log;
^~~~~^
Je serais Í votre place, je protègerais la variable avec des
double quotes, comme ci-dessus. DIR est amenée Í stocker des
expressions rationelles, et ce genre de contenu peut facilement
être interprété par le shell d'une façon inattendue.
find -iname Mozilla | egrep -v "$DIR" | xargs rm -Rvf >^~~~~^
delmozilla.log;
Je serais Í votre place, je protègerais la variable avec des
double quotes, comme ci-dessus. DIR est amenée Í stocker des
expressions rationelles, et ce genre de contenu peut facilement
être interprété par le shell d'une façon inattendue.
DIR="([0-9]|netlogon|backup|eole|mail)" ---> ne fonctionne pas du
tout, j'ai tout explosé ;-)
Heureusement que je teste avant ;-)
DIR="([0-9]|netlogon|backup|eole|mail)" ---> ne fonctionne pas du
tout, j'ai tout explosé ;-)
Heureusement que je teste avant ;-)
DIR="([0-9]|netlogon|backup|eole|mail)" ---> ne fonctionne pas du
tout, j'ai tout explosé ;-)
Heureusement que je teste avant ;-)
Bonjour ̓ tous les deux,Í‚Â
merci pour ces informations, cependant la commande find ne fonctionnais pas
et aucun effacement
selectif n'̓©tait possible (dixit la variable). les modification de mise en
variable d̓©j̓ test̓©.
pour le sheebangÍ‚Â et set -e c'est un choix... g̓©n̓©ralement je fais mes scripts
et les testes d'abord en environnement
de test ou pr̓©prod avant de les passer scrupuleusement soigneusement en
production.
J'ai trouv̓© la solution :
J'ai finalement trouver en modifiant uniquement celle-ci parÍ‚Â
find . -name Mozilla Í‚Â -type d -ls -exec rm -rv {} + | egrep -v $DIR >
delmozilla.log;
Bonjour ̓ tous les deux,Í‚Â
merci pour ces informations, cependant la commande find ne fonctionnais pas
et aucun effacement
selectif n'̓©tait possible (dixit la variable). les modification de mise en
variable d̓©j̓ test̓©.
pour le sheebangÍ‚Â et set -e c'est un choix... g̓©n̓©ralement je fais mes scripts
et les testes d'abord en environnement
de test ou pr̓©prod avant de les passer scrupuleusement soigneusement en
production.
J'ai trouv̓© la solution :
J'ai finalement trouver en modifiant uniquement celle-ci parÍ‚Â
find . -name Mozilla Í‚Â -type d -ls -exec rm -rv {} + | egrep -v $DIR >
delmozilla.log;
Bonjour ̓ tous les deux,Í‚Â
merci pour ces informations, cependant la commande find ne fonctionnais pas
et aucun effacement
selectif n'̓©tait possible (dixit la variable). les modification de mise en
variable d̓©j̓ test̓©.
pour le sheebangÍ‚Â et set -e c'est un choix... g̓©n̓©ralement je fais mes scripts
et les testes d'abord en environnement
de test ou pr̓©prod avant de les passer scrupuleusement soigneusement en
production.
J'ai trouv̓© la solution :
J'ai finalement trouver en modifiant uniquement celle-ci parÍ‚Â
find . -name Mozilla Í‚Â -type d -ls -exec rm -rv {} + | egrep -v $DIR >
delmozilla.log;
Le vendredi 27 novembre 2020 ̓ 11:08 +0100, David Martin a ̓©crit :Bonjour ̓ tous les deux,pas
merci pour ces informations, cependant la commande find ne fonctionnaiset aucun effacementen
selectif n'̓©tait possible (dixit la variable). les modification de misevariable d̓©j̓ test̓©.scripts
pour le sheebang et set -e c'est un choix... g̓©n̓©ralement je fais meset les testes d'abord en environnement
de test ou pr̓©prod avant de les passer scrupuleusement soigneusement en
production.
J'ai trouv̓© la solution :
J'ai finalement trouver en modifiant uniquement celle-ci par
find . -name Mozilla -type d -ls -exec rm -rv {} + | egrep -v $DIR >
delmozilla.log;
Quel est l'int̓©r̓ªt du '-ls' ?
Ga̓«tan
Le vendredi 27 novembre 2020 ̓ 11:08 +0100, David Martin a ̓©crit :
> Bonjour ̓ tous les deux,
> merci pour ces informations, cependant la commande find ne fonctionnais
pas
> et aucun effacement
> selectif n'̓©tait possible (dixit la variable). les modification de mise
en
> variable d̓©j̓ test̓©.
>
> pour le sheebang et set -e c'est un choix... g̓©n̓©ralement je fais mes
scripts
> et les testes d'abord en environnement
> de test ou pr̓©prod avant de les passer scrupuleusement soigneusement en
> production.
>
> J'ai trouv̓© la solution :
>
> J'ai finalement trouver en modifiant uniquement celle-ci par
>
> find . -name Mozilla -type d -ls -exec rm -rv {} + | egrep -v $DIR >
> delmozilla.log;
>
Quel est l'int̓©r̓ªt du '-ls' ?
Ga̓«tan
Le vendredi 27 novembre 2020 ̓ 11:08 +0100, David Martin a ̓©crit :Bonjour ̓ tous les deux,pas
merci pour ces informations, cependant la commande find ne fonctionnaiset aucun effacementen
selectif n'̓©tait possible (dixit la variable). les modification de misevariable d̓©j̓ test̓©.scripts
pour le sheebang et set -e c'est un choix... g̓©n̓©ralement je fais meset les testes d'abord en environnement
de test ou pr̓©prod avant de les passer scrupuleusement soigneusement en
production.
J'ai trouv̓© la solution :
J'ai finalement trouver en modifiant uniquement celle-ci par
find . -name Mozilla -type d -ls -exec rm -rv {} + | egrep -v $DIR >
delmozilla.log;
Quel est l'int̓©r̓ªt du '-ls' ?
Ga̓«tan