Mauvais shell changer de shell? Moi mon zsh me demande confirmation.
Je serais bien surpris que ce soit le shell qui te demande confirmation (le shell, il parse la ligne de commande et il lance l'executable concerné quand tu appuies sur entrée, c'est tout -- sauf pour les commandes internes du shell). Par contre, ton zsh a sans doute fait un alias qui rajoute l'option -i.
Mauvais shell changer de shell?
Moi mon zsh me demande confirmation.
Je serais bien surpris que ce soit le shell qui te demande
confirmation (le shell, il parse la ligne de commande et il lance
l'executable concerné quand tu appuies sur entrée, c'est tout -- sauf
pour les commandes internes du shell). Par contre, ton zsh a sans
doute fait un alias qui rajoute l'option -i.
Mauvais shell changer de shell? Moi mon zsh me demande confirmation.
Je serais bien surpris que ce soit le shell qui te demande confirmation (le shell, il parse la ligne de commande et il lance l'executable concerné quand tu appuies sur entrée, c'est tout -- sauf pour les commandes internes du shell). Par contre, ton zsh a sans doute fait un alias qui rajoute l'option -i.
-- Matthieu
Nicolas George
Matthieu Moy wrote in message :
Je serais bien surpris que ce soit le shell qui te demande confirmation
Et pourtant :
~ $ rm * zsh: sure you want to delete all the files in /users/98/maths/george [yn]? n ^^^ RM_STAR_SILENT (-H) Do not query the user before executing "rm *" or "rm path/*".
(zshoptions(1))
Matthieu Moy wrote in message <vpqsm2a5chm.fsf@ecrins.imag.fr>:
Je serais bien surpris que ce soit le shell qui te demande
confirmation
Et pourtant :
george@goelette ~ $ rm *
zsh: sure you want to delete all the files in /users/98/maths/george [yn]? n
^^^
RM_STAR_SILENT (-H)
Do not query the user before executing "rm *" or "rm
path/*".
Je serais bien surpris que ce soit le shell qui te demande confirmation
Et pourtant :
~ $ rm * zsh: sure you want to delete all the files in /users/98/maths/george [yn]? n ^^^ RM_STAR_SILENT (-H) Do not query the user before executing "rm *" or "rm path/*".
(zshoptions(1))
noone
Bon c'est bon j'ai réparé ma bêtise... merci (quand même)
Bon c'est bon j'ai réparé ma bêtise... merci (quand même)
Bon c'est bon j'ai réparé ma bêtise... merci (quand même)
noone
Bon c'est bon j'ai réparé ma bêtise... merci (quand même)
Ah oui pour info c'était une base de donnée d'exercices de Physique en LaTeX (pour l'instant il n'y en a que 5 exercices... ) avec script Perl pour générer la base (fichier texte index_table.txt)
Si ça vous interesse c'est ici : http://s.cls.free.fr/realisations/phys_exo/phys_exo_latex.zip
Je pense que partager c'est le meilleur moyen de sauvegarde ;-) c'est aussi grace à ça que je n'ai pas trop perdu... il y avait pas mal de choses que j'avais éparpillées sur Usenet ;-)
Bon c'est bon j'ai réparé ma bêtise... merci (quand même)
Ah oui pour info c'était une base de donnée d'exercices de Physique en
LaTeX (pour l'instant il n'y en a que 5 exercices... )
avec script Perl pour générer la base (fichier texte index_table.txt)
Si ça vous interesse c'est ici :
http://s.cls.free.fr/realisations/phys_exo/phys_exo_latex.zip
Je pense que partager c'est le meilleur moyen de sauvegarde ;-)
c'est aussi grace à ça que je n'ai pas trop perdu... il y avait pas mal
de choses que j'avais éparpillées sur Usenet ;-)
Bon c'est bon j'ai réparé ma bêtise... merci (quand même)
Ah oui pour info c'était une base de donnée d'exercices de Physique en LaTeX (pour l'instant il n'y en a que 5 exercices... ) avec script Perl pour générer la base (fichier texte index_table.txt)
Si ça vous interesse c'est ici : http://s.cls.free.fr/realisations/phys_exo/phys_exo_latex.zip
Je pense que partager c'est le meilleur moyen de sauvegarde ;-) c'est aussi grace à ça que je n'ai pas trop perdu... il y avait pas mal de choses que j'avais éparpillées sur Usenet ;-)
VAQUIN Vincent
Tu connaissais celle du mec qui fait rm -fr / tmp/foo/bar, en root ?)
Moi j'ai fait ça... rm -Rf / en root... Heureusement, j'ai stoppé en catastrophe et ça n'avait commencé à grignoter que le /mnt/windows...
La vengeance du pingouin ! Du coup j'ai même pas réinstallé windows et je m'en suis passé pendant des mois. J'ai installé XP lorsqu'on m'a offert un jeu vidéo à Noël...
Tu connaissais celle du mec
qui fait rm -fr / tmp/foo/bar, en root ?)
Moi j'ai fait ça...
rm -Rf /
en root...
Heureusement, j'ai stoppé en catastrophe et ça n'avait commencé à grignoter
que le /mnt/windows...
La vengeance du pingouin !
Du coup j'ai même pas réinstallé windows et je m'en suis passé pendant des
mois.
J'ai installé XP lorsqu'on m'a offert un jeu vidéo à Noël...
Tu connaissais celle du mec qui fait rm -fr / tmp/foo/bar, en root ?)
Moi j'ai fait ça... rm -Rf / en root... Heureusement, j'ai stoppé en catastrophe et ça n'avait commencé à grignoter que le /mnt/windows...
La vengeance du pingouin ! Du coup j'ai même pas réinstallé windows et je m'en suis passé pendant des mois. J'ai installé XP lorsqu'on m'a offert un jeu vidéo à Noël...
dominique
Bonsoir,
j'ai fait comme un con un rm * dans un répertoire perso... (sur Debian Sarge)
Linux Pratique du mois de gnagnagna avait passé un super script que j'utilise toujours. Il est dans mes alias et et je l'utilise en lieu et place de rm. Il crée dans le $HOME un répertoire .corbeille qui marche impeccablement en mode console. Je répète : ce script n'est pas de moi ! Bon après-midi, Dominique
[ messcripts]$ cat srm #!/bin/bash
# v : verbeux # h : aide en ligne # l : liste mais avec affichage personnalis� # e : vider la corbeille # r : vider r�ursivement les r�ertoires # s : restituer un fichier # S : restituer un fichier dans son r�ertoire d'origine
while getopts ":vhlers:S:" option do case $option in v) optverb=1 ;; h) optaide=1 ;; l) optlist=1 ;; e) optvide=1 ;; r) optrecursif=1 ;; s) optrestore=1 restore=$OPTARG;; S) optrestore=2 restore=$OPTARG;; # en cas d'option erron�, on affiche l'aide *) echo "Option -$OPTARG inconnue" optaide=1 ;; esac done shift $((OPTIND - 1))
# V�ification de l'existence du r�ertoire corbeille if [ ! -d "$corbeille" ] then mkdir "$corbeille" fi
# Affichage de l'aide if [ $optaide == 1 ] then echo "Usage : $0 [options] [fichiers �effacer]"; echo "Options :" echo " -v : mode verbeux" echo " -h : affiche cette aide" echo " -r : effacement r�ursif des sous-r�ertoires" echo "-s fichier : restitue un fichier" echo "-S fichier : restitue un fichier dans son r�ertoire d'origine" echo " -l : affiche le contenu de la corbeille" echo " -e : vide la corbeille" exit 0 fi
# Affichage du contenu de la corbeille if [ $optlist == 1 ] then if [ $optrecursif == 1 ] then liste=$(ls -RF --color "$corbeille") else liste=$(ls -F --color "$corbeille") fi
echo "${liste//__SLASH__//}" | more du -h --max-depth=0 $corbeille exit 0 fi
# Vider la corbeille if [ $optvide == 1 ] then if [ $optverb == 1 ] then du -h --max-depth=0 $corbeille echo "Vidange de la corbeille..." fi
rm -rf $corbeille/*
if [ $optverb == 1 ] then du -h --max-depth=0 $corbeille fi exit 0 fi
# Restitution de fichiers effac� if [ $optrestore != 0 ] then fichier=($(ls -1 $corbeille | grep $restore)) if [ ${#fichier[*]} == 0 ] then echo "Aucun fichier ne correspond au motif $restore" exit 0 fi
if [ $optrestore == 2 ] then for fic in ${fichier[*]} do restoredfile=${fic//__SLASH__//} if [ $optverb ] then echo "$restoredfile restitu� fi mv "$corbeille/$fic" "$restoredfile" done elif [ $optrestore == 1 ] then for fic in ${fichier[*]} do restoredfile=$(echo $fic | sed 's/.*__SLASH__//g') if [ $optverb ] then echo "$restoredfile restitu� fi mv "$corbeille/$fic" "$restoredfile" done fi exit 0 fi
# Action principale : effacer les fichiers for fichier in $* do if [ -d "$fichier" -a $optrecursif != 1 ] then echo "$fichier est un r�ertoire, il ne peut �re effac� continue fi
path=$(pwd $fichier)
if [ $optverb ] then echo "$fichier -> $corbeille/" fi mv "$fichier" "$corbeille/${path////__SLASH__}__SLASH__$fichier" done du -h --max-depth=0 $corbeille
Bonsoir,
j'ai fait comme un con un rm * dans un répertoire perso... (sur Debian
Sarge)
Linux Pratique du mois de gnagnagna avait passé un super script que
j'utilise toujours. Il est dans mes alias et et je l'utilise en lieu et
place de rm.
Il crée dans le $HOME un répertoire .corbeille qui marche impeccablement
en mode console.
Je répète : ce script n'est pas de moi !
Bon après-midi,
Dominique
# v : verbeux
# h : aide en ligne
# l : liste mais avec affichage personnalis�
# e : vider la corbeille
# r : vider r�ursivement les r�ertoires
# s : restituer un fichier
# S : restituer un fichier dans son r�ertoire d'origine
while getopts ":vhlers:S:" option
do
case $option in
v) optverb=1 ;;
h) optaide=1 ;;
l) optlist=1 ;;
e) optvide=1 ;;
r) optrecursif=1 ;;
s) optrestore=1
restore=$OPTARG;;
S) optrestore=2
restore=$OPTARG;;
# en cas d'option erron�, on affiche l'aide
*) echo "Option -$OPTARG inconnue"
optaide=1 ;;
esac
done
shift $((OPTIND - 1))
# V�ification de l'existence du r�ertoire corbeille
if [ ! -d "$corbeille" ]
then
mkdir "$corbeille"
fi
# Affichage de l'aide
if [ $optaide == 1 ]
then
echo "Usage : $0 [options] [fichiers �effacer]";
echo "Options :"
echo " -v : mode verbeux"
echo " -h : affiche cette aide"
echo " -r : effacement r�ursif des sous-r�ertoires"
echo "-s fichier : restitue un fichier"
echo "-S fichier : restitue un fichier dans son r�ertoire d'origine"
echo " -l : affiche le contenu de la corbeille"
echo " -e : vide la corbeille"
exit 0
fi
# Affichage du contenu de la corbeille
if [ $optlist == 1 ]
then
if [ $optrecursif == 1 ]
then
liste=$(ls -RF --color "$corbeille")
else
liste=$(ls -F --color "$corbeille")
fi
echo "${liste//__SLASH__//}" | more
du -h --max-depth=0 $corbeille
exit 0
fi
# Vider la corbeille
if [ $optvide == 1 ]
then
if [ $optverb == 1 ]
then
du -h --max-depth=0 $corbeille
echo "Vidange de la corbeille..."
fi
rm -rf $corbeille/*
if [ $optverb == 1 ]
then
du -h --max-depth=0 $corbeille
fi
exit 0
fi
# Restitution de fichiers effac�
if [ $optrestore != 0 ]
then
fichier=($(ls -1 $corbeille | grep $restore))
if [ ${#fichier[*]} == 0 ]
then
echo "Aucun fichier ne correspond au motif $restore"
exit 0
fi
if [ $optrestore == 2 ]
then
for fic in ${fichier[*]}
do
restoredfile=${fic//__SLASH__//}
if [ $optverb ]
then
echo "$restoredfile restitu�
fi
mv "$corbeille/$fic" "$restoredfile"
done
elif [ $optrestore == 1 ]
then
for fic in ${fichier[*]}
do
restoredfile=$(echo $fic | sed 's/.*__SLASH__//g')
if [ $optverb ]
then
echo "$restoredfile restitu�
fi
mv "$corbeille/$fic" "$restoredfile"
done
fi
exit 0
fi
# Action principale : effacer les fichiers
for fichier in $*
do
if [ -d "$fichier" -a $optrecursif != 1 ]
then
echo "$fichier est un r�ertoire, il ne peut �re effac�
continue
fi
path=$(pwd $fichier)
if [ $optverb ]
then
echo "$fichier -> $corbeille/"
fi
mv "$fichier" "$corbeille/${path////__SLASH__}__SLASH__$fichier"
done
du -h --max-depth=0 $corbeille
j'ai fait comme un con un rm * dans un répertoire perso... (sur Debian Sarge)
Linux Pratique du mois de gnagnagna avait passé un super script que j'utilise toujours. Il est dans mes alias et et je l'utilise en lieu et place de rm. Il crée dans le $HOME un répertoire .corbeille qui marche impeccablement en mode console. Je répète : ce script n'est pas de moi ! Bon après-midi, Dominique
[ messcripts]$ cat srm #!/bin/bash
# v : verbeux # h : aide en ligne # l : liste mais avec affichage personnalis� # e : vider la corbeille # r : vider r�ursivement les r�ertoires # s : restituer un fichier # S : restituer un fichier dans son r�ertoire d'origine
while getopts ":vhlers:S:" option do case $option in v) optverb=1 ;; h) optaide=1 ;; l) optlist=1 ;; e) optvide=1 ;; r) optrecursif=1 ;; s) optrestore=1 restore=$OPTARG;; S) optrestore=2 restore=$OPTARG;; # en cas d'option erron�, on affiche l'aide *) echo "Option -$OPTARG inconnue" optaide=1 ;; esac done shift $((OPTIND - 1))
# V�ification de l'existence du r�ertoire corbeille if [ ! -d "$corbeille" ] then mkdir "$corbeille" fi
# Affichage de l'aide if [ $optaide == 1 ] then echo "Usage : $0 [options] [fichiers �effacer]"; echo "Options :" echo " -v : mode verbeux" echo " -h : affiche cette aide" echo " -r : effacement r�ursif des sous-r�ertoires" echo "-s fichier : restitue un fichier" echo "-S fichier : restitue un fichier dans son r�ertoire d'origine" echo " -l : affiche le contenu de la corbeille" echo " -e : vide la corbeille" exit 0 fi
# Affichage du contenu de la corbeille if [ $optlist == 1 ] then if [ $optrecursif == 1 ] then liste=$(ls -RF --color "$corbeille") else liste=$(ls -F --color "$corbeille") fi
echo "${liste//__SLASH__//}" | more du -h --max-depth=0 $corbeille exit 0 fi
# Vider la corbeille if [ $optvide == 1 ] then if [ $optverb == 1 ] then du -h --max-depth=0 $corbeille echo "Vidange de la corbeille..." fi
rm -rf $corbeille/*
if [ $optverb == 1 ] then du -h --max-depth=0 $corbeille fi exit 0 fi
# Restitution de fichiers effac� if [ $optrestore != 0 ] then fichier=($(ls -1 $corbeille | grep $restore)) if [ ${#fichier[*]} == 0 ] then echo "Aucun fichier ne correspond au motif $restore" exit 0 fi
if [ $optrestore == 2 ] then for fic in ${fichier[*]} do restoredfile=${fic//__SLASH__//} if [ $optverb ] then echo "$restoredfile restitu� fi mv "$corbeille/$fic" "$restoredfile" done elif [ $optrestore == 1 ] then for fic in ${fichier[*]} do restoredfile=$(echo $fic | sed 's/.*__SLASH__//g') if [ $optverb ] then echo "$restoredfile restitu� fi mv "$corbeille/$fic" "$restoredfile" done fi exit 0 fi
# Action principale : effacer les fichiers for fichier in $* do if [ -d "$fichier" -a $optrecursif != 1 ] then echo "$fichier est un r�ertoire, il ne peut �re effac� continue fi
path=$(pwd $fichier)
if [ $optverb ] then echo "$fichier -> $corbeille/" fi mv "$fichier" "$corbeille/${path////__SLASH__}__SLASH__$fichier" done du -h --max-depth=0 $corbeille
JRD
Bonjour,
Jerome Lambert wrote:
Matthieu Moy wrote:
Jerome Lambert writes:
-f Attempt to remove the files without prompting for confirma- tion,
[Démonstration erronée]
Donc, visiblement, sous Linux, rm = rm -f ...
Non.
"rm" efface seulement les fichiers accessible en écriture. "rm -f" efface même les fichiers protégés en écriture.
Démonstration :
/tmp/jrd > ls -al total 48 drwxr-xr-x 2 drapeau micro 4096 Apr 2 18:06 .
/tmp/jrd > echo > tata ; echo > titi && chmod -w titi
tata = fichier "normal" => lecture _et_ écriture titi = fichier "protégé" => lecture _sans_ droit écriture
/tmp/jrd > ls -al total 48 drwxr-xr-x 2 drapeau micro 4096 Apr 2 18:10 .
CQFD
Donc "rm" != "rm -f"
Voilà. JRD. -- jerome (dot) drapeau <at> free (dot) fr http://jerome.drapeau.free.fr La critique est aisée, l'art est difficile.
Matthieu Moy
"" writes:
Je pense que partager c'est le meilleur moyen de sauvegarde ;-) c'est aussi grace à ça que je n'ai pas trop perdu... il y avait pas mal de choses que j'avais éparpillées sur Usenet ;-)
« _real_ men just upload their important stuff on ftp, and let the rest of the world mirror it ;) » -- Linus Benedict Torvalds.
-- Matthieu
"noone@nowhere.com" <noone@nowhere.com> writes:
Je pense que partager c'est le meilleur moyen de sauvegarde ;-)
c'est aussi grace à ça que je n'ai pas trop perdu... il y avait pas
mal de choses que j'avais éparpillées sur Usenet ;-)
« _real_ men just upload their important stuff on ftp, and let the
rest of the world mirror it ;) » -- Linus Benedict Torvalds.
Je pense que partager c'est le meilleur moyen de sauvegarde ;-) c'est aussi grace à ça que je n'ai pas trop perdu... il y avait pas mal de choses que j'avais éparpillées sur Usenet ;-)
« _real_ men just upload their important stuff on ftp, and let the rest of the world mirror it ;) » -- Linus Benedict Torvalds.
-- Matthieu
Sébastien Dailly
Donc, visiblement, sous Linux, rm = rm -f ...
ca dépend .. un alias peut etre fait automatiquement .. et ca peut sauver souvent !
Donc, visiblement, sous Linux, rm = rm -f ...
ca dépend .. un alias peut etre fait automatiquement .. et ca peut sauver
souvent !