On 2006-10-27 14:51:42 +0200, =?UTF-8?Q? Kuon_-_Nicolas_Goy_=28Goyman.com_SA=29_-_=E6=99=82?= =?UTF-8?Q?=E6=9C=9F=E7=B2=BE=E9=9C=8A ?= wrote:
Donc, la petite commande pour ce faire:
svn status |grep ! |cut -d" " -f7 >| /tmp/svnDelete && svn delete -- targets /tmp/svnDelete && rm /tmp/svnDelete
le cut -d" " -f7 n'est pas très robuste, mais je vous laise le soin de vérifier que cela cut bien le filename.
Le pire, c'est le "grep !", qui va aussi matcher les fichiers qui ont un ! dans leur nom (j'en ai un certain nombre chez moi: ce sont des fichiers qui viennent de RISC OS, où ce caractère est utilisé en début de certains noms de fichiers). Il faut le remplacer par un grep '^!' je suppose. D'autre part, si un autre utilisateur a créé un lien symbolique /tmp/svnDelete pointant vers un de tes fichiers, tu l'écrases. Donc éviter d'utiliser des répertoires communs comme /tmp sans prendre de précaution. Je crois que le plus sûr si on doit créer un fichier dans un tel répertoire, c'est commencer par créer un répertoire, ensuite vérifier qu'on est bien l'auteur du fichier, ensuite vérifier les permissions et que ce n'est pas un lien symbolique (c'est plus que ce que demande la théorie, mais en pratique, il faut toujours vérifier plus de choses, car certains systèmes sont particulièrement buggés). -- Vincent Lefèvre <vincent@vinc17.org> - Web: <http://www.vinc17.org/> 100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/> Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)