logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 Re : Scripts, programmes et robots » lire un fichier ligne par ligne et utiliser la ligne dans un script » 27-01-2023 15:40:09

gregern
Servers_Hostname="$(cat /path/to/server_list.txt)"
SshCmd="timeout ${Timeout} ssh -i ${SshKey} -n -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
SshUsr="root"
Csv_File="/path/to/data.csv"
for SrvDst in ${Servers_Hostname}
        do

                ${SshCmd} "${SshUsr}"@"${SrvDst}" "cat /${SshUsr}/.ssh/authorized_keys | while read line ; do echo -e \"$SrvDst;\"\$line|sed 's/$/;/'; done"
        done > "$Csv_File"

#2 Re : Scripts, programmes et robots » lire un fichier ligne par ligne et utiliser la ligne dans un script » 22-01-2023 12:33:51

gregern
Carton rouge ^^
J'ai pas mon pc sous la main mais j'ai trouvé depuis, la solution.
Merci à vous en tout cas!
(Je peux la partager si vous voulez).

#4 Scripts, programmes et robots » lire un fichier ligne par ligne et utiliser la ligne dans un script » 18-11-2022 12:06:33

gregern
Réponses : 13
Bonjour,

j'ai un fichier contenant des hostname fqdn de machines dans un réseau.
le script doit lire ce fichier dans le but de se connecter à chaque machines présentes dans le fichier.
une fois connecté au server, il va y traiter des commandes.

#!/bin/bash

#include colors
. "$(dirname "$0")"/colors.txt


#vars
DATE="$(date)"
TIMEOUT="10"
FQDN=$(hostname --fqdn)
SSHKEY="/account/.ssh/cle_publique"

SSHOPT="timeout ${TIMEOUT} ssh -i ${SSHKEY} -n -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
SSHUSR="account"
DSTSRV="$(cat ./server_list.txt)"



#se connecter dans chaque server de la liste et faire le check
        while read ${DSTSRV[@]}
        do
                if ssh -i ${SSHKEY} ${SSHUSR}@${DSTSRV[@]}  "if [ -s \"${X}/.ssh/authorized_keys\" ]" > /dev/null 2>&1;then
                        echo "$Green### ${FQDN} ------ ${X}/.ssh/authorized_keys : ###$Nc"
                        sed -e "/^ssh.*/i \\\n# Last seen $DATE # --$Lblue  Human Key$Nc" -e "/.*==.*/i \\\n# Last seen $DATE # -- $Yellow Service Key$Nc" "${X}/.ssh/authorized_keys"
                else
                        error=1
                fi
        done < <(timeout ${TIMEOUT} ssh -i ${SSHKEY} -n -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${SSHUSR}@${DSTSRV[@]} "cat /etc/passwd | cut -d ':' -f6 | sort | uniq" )




voici la sortie :

++ timeout 10 ssh -i /root/.ssh/id-ed25519_gernoult -n -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null account@machine1.fqdn account@machine2.fqdn account@machine3.fqdn account@machine4.fqdn account@machine5.fqdn 'cat /etc/passwd | cut -d '\'':'\'' -f6 | sort | uniq'
./prog.sh: line xx: read: `account@machine1.fqdn': not a valid identifier




En fait mon problème que je souhaite solutionner est que la commande SSH incrémente toute les machines sur lesquelles il faut se connecter en meme temps.
Normalement il devrait faire séquentiellement :

timeout 10 ssh -i /root/.ssh/id-ed25519_gernoult -n -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null account@machine1.fqdn 'cat /etc/passwd | cut -d '\'':'\'' -f6 | sort | uniq'



puis


timeout 10 ssh -i /root/.ssh/id-ed25519_gernoult -n -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null account@machine2.fqdn 'cat /etc/passwd | cut -d '\'':'\'' -f6 | sort | uniq'




etc..


Est-ce que quelqu'un pourrait me filer un tips pour que ca fonctionne comme cela? (et en meme temps, je m'endormirais moins c*n ce soir^^)

Merci!

#5 GNOME » le connecteur de l'hôte natif n'est pas reconnu » 06-05-2017 11:34:17

gregern
Réponses : 0
Bonjour,

j'essaie d'activer des extensions mais j'ai ce message qui s'affiche :
223133Capturedu20170506123029.png


aucune idée de comment reconnaitre ce connecteur :s


un petit coup de main?
merci !!

Pied de page des forums

Propulsé par FluxBB