Question Récup logs

Plus d'informations
il y a 2 ans 11 mois #30714 par Keenupower
Récup logs a été créé par Keenupower
Bonjour,
Débutant en powershelle je souhaite mettre en place mon premier script:
Le contexte :
Je dois récupérer 1 fois par semaine, 16 logs sur un serveur. Les 5 dernières lignes de ces fichiers textes me sont utiles.
Je souhaite simplifier cette tâche répétitive.

Je me suis dit pour ce scipt, j'ai besoinde 2 variables pour les chemins, d'une boucle foreach pour parcourir les fichiers avec les 5 dern lignes et d'une sortie vers un fichier html
Est-ce que mon raisonnement est logique, est-ce que cela peut fonctionner ?

Il me semble avoir eu un message d'erreur Access denied, en ayant tenter de l'exécuter en tant qu'admin et en ayant les droits sur le dossier.

Merci de votre aide.

$chemin = "\\xxxxxxf\xxxxx\*.txt*"

$fichiers = get-childitem $chemin

foreach ($fichiers in $chemin)
{
    Get-Content -Path \\xxxxxx\xxxxx -Tail 5 -Wait | out-file C:\Users\xxxx\Desktop\test.html
}
 

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 11 mois #30747 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Récup logs
Salut,
il s'agit de fichier texte ?

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 11 mois #30748 par Keenupower
Réponse de Keenupower sur le sujet Récup logs
Oui 16 fichiers txt.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 11 mois #30751 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Récup logs
L'ensemble me semble correcte,si le répertoire contient tous les fichiers de log et rien d'autre) , mais pas le -Wait qui attend une écriture.
Reste le nom du fichier html qui est identique et sera écrasé à chaque appel ( ajoute -Append)

Pour l'erreur il se peut que les fichiers soient en cours d'utilisation.

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 11 mois #30761 par Keenupower
Réponse de Keenupower sur le sujet Récup logs
Merci pour cette réponse, le répertoire contient bien que des logs .txt. Je note le wait et corrige.
Je dois tester lundi, et je verrais si message d'erreur.

.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 2 ans 11 mois #30830 par Keenupower
Réponse de Keenupower sur le sujet Récup logs
Test ok tout est récupéré correctement dans le fichier html

Maintenant étape 2 : Mise en forme
Je souhaite que mon script s'intègre et soit mise en forme dans la page html.

J'ai tenté ceci mais cela ne marche pas

# Date du fichier

$date =( Get-Date ).ToString('yyyy-MM-dd')

# Création d'un fichier vide html

$report_html = "C:\Users\xxxx\Desktop\xxxxx - $date.html"

# Fichier html

$head_and_title = @"
<html>
<head>
<meta http-equiv='content-type' content='text/html; charset=iso-8859-1>
<title>Rapport logs Odyssee ToDoList</title>
<STYLE TYPE="text/css">
<!--
td {
font-family: Tahoma;
font-size: 11px;
border-top: 1px solid #999999;
border-right: 1px solid#999999;
border-bottom: 1px solid "999999;
border-left: 1px solid "999999;
padding-top 0px;
padding-right 0px;
padding-bottom 0px;
padding-left 0px;
}
body {
margin-left: 5px;
margin-top: 5px;
margin-right: 0px;
margin-bottom: 10px;

-->
</style>
</head>
"@

#ajout du contenu de la variable et du scipt Odyssee

Add-content $report_html $head_and_title

$chemin = "\\xxxxxxf\xxxxx\*.txt*"

$fichiers = get-childitem $chemin

foreach ($fichiers in $chemin)
{
Get-Content -Path \\xxxxxx\xxxxx -Tail 5 | out-file C:\Users\xxxx\Desktop\test.html -Append
}

Le problème 2 fichiers html se créent mais aucune mise en forme.

Comment faire ?

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.079 secondes
Propulsé par Kunena