LxLeChat / FlowChartCore

PowerShell Module Written in C# to create DOT graphs from PS Scripts
MIT License
19 stars 3 forks source link

A propos d'un exemple d'usage de Find-FLowChartNodes #75

Closed LaurentDardenne closed 4 years ago

LaurentDardenne commented 4 years ago

Dans le readme on trouve +- cette construction :

 Get-ChildItem -Path c:\temp\t[1-2].ps1 |
 Find-FLowChartNodes|
 New-FLowChartGraph > c:\temp\g2.dot

&"C:\Tools\Graphviz\bin\dot.exe" -Tpng c:\temp\g2.dot -o "c:\temp\g2.png"

Quel est son intérêt ? Le fichier .dot contient bien deux déclarations de digraph mais le png ne représente que le premier (avec un affichage parasite en prime). Find-FLowChartNodes renvoit 2 liste de noeuds.

LxLeChat commented 4 years ago

on trouve ça dans le readme ??? (j'ai pas trouvé! ) je crois comprendre, mais pas sur : l'idée c'est que tu peux utiliser new-flowchartnodes en // avec Export-PSGraph de PSgraph. Du coup on pourrait faire : gci .\*.ps1 | find-flowchartnodes | Export-psgraph (je me rappelle plus des param de la cmdlet) et la ça génère des fichiers png, pdf etc ... ( [edit] ou bien dot d'ailleurs ! ) Et oui, tu auras x list de noeuds, correspondant aux nombres de fichiers que tu as passé.

En esperant avoir répondu à ta question!

LaurentDardenne commented 4 years ago

on trouve ça dans le readme ??? (j'ai pas trouvé! )

Oui, mais je l'ai modifié :

Using a Path:

PS > Find-FlowChartNodes -Path .\somescript.ps1
PS > Get-ChildItem -Path c:\temp -Filter *.ps1 | Find-FLowChartNodes

New-FlowChartGraph

Je pensais que les deux exemples étaient couplé à New-FLowChartGraph.

En espérant avoir répondu à ta question!

Oui, Il manque juste un segment de pipeline (Foreach-Object) pour générer les 2 graphes et propager les noms de fichier:

Get-ChildItem -Path c:\temp\t[1-2].ps1 -PipelineVariable FileName|
 Find-FLowChartNodes|
 New-FLowChartGraph|
 Foreach-Object {
     $_
     "$FileName .graph"
 }

Je préciserais cela dans l'aide en ligne.