Add files via upload
This commit is contained in:
parent
48f8b760b9
commit
a622cf1027
85
SHELL/tsm_path_online.sh
Normal file
85
SHELL/tsm_path_online.sh
Normal file
@ -0,0 +1,85 @@
|
||||
#!/bin/sh
|
||||
|
||||
# TITRE path_online.sh
|
||||
# DESCRIPTION : Script de vérification/passage ONLINE des paths TSM
|
||||
# EXECUTION : TOUS LES JOURS A ??H VIA AWA - JOB
|
||||
# HISTORIQUE :
|
||||
# T | Date | Auteur | Description
|
||||
#---+------------+------------------------------+------------------------------------
|
||||
# A | 09/03/22 | Demonic | Création
|
||||
# -----------------------------------------------------------------------------------
|
||||
|
||||
#########################################
|
||||
## DECLARATION DES VARIABLES ##
|
||||
#########################################
|
||||
|
||||
# IDENTIFIANTS TSM
|
||||
IDTSM=""
|
||||
MDPTSM=""
|
||||
# STATUT DES PATHS
|
||||
STATUS=""
|
||||
# SOURCE DU PATH A TRAITER - SRV TSM
|
||||
SOURCE=""
|
||||
# DESTINATION DU PATH A TRAITER - DRIVE
|
||||
DESTINATION=""
|
||||
# LIBRAIRIE CORRSPONDANTE AU PATH A TRAITER
|
||||
LIBRARY=""
|
||||
|
||||
#########################################
|
||||
## DECLARATION DES FONCTIONS ##
|
||||
#########################################
|
||||
|
||||
# FONCTION PERMETTANT DE SIMPLIFIER L'EXECUTION DE LA COMMANDE ADMIN TSM DANS LE SCRIPT
|
||||
tsmcmd(){
|
||||
dsmadmc -id=$IDTSM -pa=$MDPTSM -datao=yes $*
|
||||
return $?
|
||||
}
|
||||
|
||||
########################
|
||||
## PROGRAMME ##
|
||||
########################
|
||||
|
||||
# LISTING DES STATUTS DES PATHS
|
||||
echo -e "\nLISTING DES STATUTS EN COURS...."
|
||||
|
||||
# EXECUTION D'UNE REQUETE DB2 POUR LISTER LES PATHS A L'ETAT DIFFERENT DE ONLINE
|
||||
STATUS="$(tsmcmd -commadelimited "SELECT source_name, destination_name, library_name FROM paths WHERE online != 'YES'" | sed -e 's/,/ /g')"
|
||||
|
||||
echo -e "\nLISTING OK"
|
||||
# FIN DU LISTING
|
||||
|
||||
# CONDITION POUR REPASSER LES PATHS ONLINE
|
||||
# VERIFICATION SI LA VARIABLE STATUS COMPORTE LE CODE ERREUR ANR2034E, CELUI CI CORRESPONDANT A AUCUN PATHS KO
|
||||
if [[ "$STATUS" == *"ANR2034E SELECT: No match found using this criteria."* ]]; then
|
||||
|
||||
# CONDITION OK : TOUS LES PATHS SONT OK, LE CODE ERREUR EST BIEN AFFICHE DANS LA VARIABLE STATUS
|
||||
echo -e "\nTOUS LES PATHS SONT ONLINE\n"
|
||||
|
||||
else
|
||||
|
||||
# CONDITION KO : 1 OU PLUSIEURS PATHS SONT KO, ILS SONT LISTES DANS LA VARIABLE STATUS
|
||||
# LISTING DES PATHS KO
|
||||
echo -e "\nLISTE DES PATHS KO :\n$STATUS\n\nRELANCE DES PATHS...."
|
||||
|
||||
# PASSAGE ONLINE DES PATHS KO
|
||||
# LECTURE LIGNE PAR LIGNE DE LA VARIABLE STATUS POUR RELANCE. 1 LIGNE = 1 PATH. CF LISTING CI-DESSUS
|
||||
echo "$STATUS" | while read -r line; do
|
||||
|
||||
# RECUPERATION DU 1ER CHAMP DE LA LIGNE, CORRESPONDANT A LA LIBRAIRIE DU DRIVE
|
||||
SOURCE=$(echo "$line" | awk '{print $1}')
|
||||
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
||||
DESTINATION=$(echo "$line" | awk '{print $2}')
|
||||
# RECUPERATION DU 2EME CHAMP DE LA LIGNE, CORRESPONDANT AU DRIVE
|
||||
LIBRARY=$(echo "$line" | awk '{print $3}')
|
||||
|
||||
# PASSAGE ONLINE DU DRIVE
|
||||
echo -e "\nPASSAGE ONLINE DU PATH $SOURCE => $DESTINATION DE LA LIBRAIRIE $LIBRARY\n"
|
||||
tsmcmd update path $SOURCE $DESTINATION srctype=server desttype=drive library=$LIBRARY online=yes
|
||||
echo -e "UPDATE EN COURS\n"
|
||||
|
||||
# FIN DE LA BOUCLE
|
||||
done
|
||||
# FIN DE LA CONDITION
|
||||
fi
|
||||
|
||||
# FIN DE SCRIPT
|
Loading…
Reference in New Issue
Block a user