#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 :
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)
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
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