Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 05/05/2015, à 13:50

akimiru

[Résolu] Script suppression distant en shell

Bonjour,
Débutant dans les scripts shell et dans le cadre de mes études, je dois réaliser un stage dans lequel je dois réaliser un script afin d'avoir accés à une liste de fichier à 0 Ko depuis un serveur et avoir le choix entre supprimer ou ne rien à faire sur chaque fichier. J'ai réalisé ce script mais je me retrouve avec un petit souci.

#!/bin/sh

ssh login@Host 'find /home/exploit/ -size 0 -print -exec read -p "Voulez vous le supprimer (y/n) ? " choix ; if [ $choix = "y" ] ; then rm -f ; else echo "fichier non supprimé " ; fi {} \;'

Et je me retrouve avec ceci en sorti :
400970sanstitre2.png

Auriez-vous une idée de comment me dépanner ?

Merci, à l'avance, pour votre aide.

Dernière modification par akimiru (Le 06/05/2015, à 10:41)

Hors ligne

#2 Le 05/05/2015, à 14:14

Sciensous

Re : [Résolu] Script suppression distant en shell

les {} sont mal placées
le meiux est aussi d'encadrer avec des guillements en cas d'espaces dans le nom
(rappel: ça correspond au nom de fichier, donc après rm)

cool

Dernière modification par Sciensous (Le 05/05/2015, à 14:16)


antiX 19 et 21 et Ubuntu 20.04 et 22.04
( sous LXDE et gnome-shell )

Hors ligne

#3 Le 06/05/2015, à 10:00

akimiru

Re : [Résolu] Script suppression distant en shell

Bonjour,

Tout d'abord, merci pour votre réponse. Mais il y a un truc que je ne comprends pas, quand vous dites

Sciensous a écrit :

le meiux est aussi d'encadrer avec des guillements en cas d'espaces dans le nom
(rappel: ça correspond au nom de fichier, donc après rm)

Je ne comprends pas car il n'y a pas de nom de fichier après la commande rm. Le truc c'est que chaque fichiers affichés par print est soumis à la réponse à la question "Voulez-vous le supprimer ?", et non un seul fichier précis.

Dernière modification par akimiru (Le 06/05/2015, à 10:01)

Hors ligne

#4 Le 06/05/2015, à 10:16

serged

Re : [Résolu] Script suppression distant en shell

Beaucoup plus simple d'utiliser l'option -i de rm !

ssh login@Host 'find /home/exploit/ -size 0 -exec rm -i  {} \;'

LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne

#5 Le 06/05/2015, à 10:35

akimiru

Re : [Résolu] Script suppression distant en shell

Oh merci, ça marche niquel.

Je ne savais pas qu'une telle option sur rm existait, ça change la vie xD

Dernière modification par akimiru (Le 06/05/2015, à 10:43)

Hors ligne