De bash, vous pouvez (sauf dans ~/.bashrc
ou quelque chose):
function create-follower() {
local _NAME=$1;
local _USER=$2;
local _HOST=$3;
local _PATH=$4;
if ! [ "${_NAME}" ]\
|| ! [ "${_USER}" ]\
|| ! [ "${_HOST}" ]\
|| ! [ "${_PATH}" ] ; then
{ echo "Cannot create log follower." ;
echo;
echo "Usage: create-follower NAME USER HOST LOG-FILE";
} >&2;
return 1 ;
fi ;
eval "function ${_NAME}(){ ssh ${_USER}@${_HOST} tail -f \"${_PATH}\" & }"
}
function activate-followers() {
if (($# < 1)) ; then
{ echo "You must specify at least one follower to use" ;
echo ;
echo "Usage:" ;
echo " activate-followers follower1 [follower2 ... followerN]";
} >&2;
return 1 ;
fi ;
for FOLLOW in "${@}" ; do
${FOLLOW} ;
done ;
wait;
}
function stop-followers() {
if [ "$(jobs)" ] ; then
kill -9 $(jobs | perl -pe 's/\[([0-9]+)\].*/%$1/') ;
fi ;
}
Et puis à partir de votre shell, définissez les journaux que vous souhaitez suivre:
[[email protected]:~]$ create-follower test1 user1 localhost /tmp/log-1.txt
[[email protected]:~]$ create-follower test2 user2 otherhost /tmp/log-2.txt
[[email protected]:~]$ create-follower test2 user3 remotebox /tmp/log-3.txt
Maintenant, activez les disciples:
[[email protected]:~]$ activate-followers test1 test2 test3
pour sortir de l'utilisation de la fonction CTRL+C
, et s haut les processus backgrounded utilisent:
[[email protected]:~]$ stop-followers
NOTE 1: Cela suppose une authentification par clé publique a été mis en place pour vos boîtes.
NOTE 2: Vous devrez tuer tous les travaux restants après avoir quitté la fonction activate-followers.Vous pouvez le faire manuellement la fonction fournie fait un kill force brute sur tous les emplois backgrounded
NOTE 3: Cela suppose un environnement unix de travail, que vous pouvez obtenir en installant Cygwin
Qui a dit que vous ne pouvez pas faire de lisp dans shellscript ;-)
semble être utile sauf que je ne suis pas supposé installer de logiciel sur le serveur linux/solaris s. – anjanb
multitail fonctionnera sur SSH. multitail -l 'ssh hôte queue -f fichier1' -l 'ssh hôte queue -f fichier2 – Schwern