JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Powershell Ven 18 Sep 2015 - 15:26 | |
| Suite à mon post sur le téléchargement d'une page web (Vos sources...), j'ai regardé d'un peu plus près ce fameux Powershell, incorporé maintenant dans Windows, qui était semble-t-il destiné à remplacer le cmd, mais avec beaucoup plus de possibilités, fonctions puissantes, exécution de scripts, etc. L'intéressant pour nous c'est que c'est exécutable en ligne de commande, donc appelable depuis Panoramic avec un simple Execute_Wait. Je pense que ça vaudrait le coup d'y regarder d'un peu plus près pour exécuter des fonctions qui normalement demanderaient des ressources externes. Par exemple ce que j'ai cité plus haut, la capture d'un fichier web en une seule ligne. Je vois aussi (entre autres) une fonction Send-MailMessage qui semble bien intéressante. Bref, voici une base pour ceux que ça pourrait intéresser, la liste complète des fonctions, avec le détail sur une fonction donnée par un clic sur la ligne correspondante. Voir aussi, entre autres, pour un aperçu des possibilités qui sont nombreuses: http://radar.oreilly.com/2013/06/powershell-command-line-introduction.html - Code:
-
' Fonctions de Powershell LABEL Quit,Commande,Test DIM ht%,ps$,a$,i%,arg$ ps$ = "Powershell.exe"
ht% = SCREEN_Y-40 HEIGHT 0,ht%: WIDTH 0,1210: BORDER_SMALL 0: color 0,0,255,255 CAPTION 0,"== C O M M A N D E S P O W E R S H E L L V E R S I O N : " LIST 1: HEIGHT 1,ht%-35: WIDTH 1,585 ON_CLICK 1,Commande LIST 2: LEFT 2,WIDTH(1)+5: HEIGHT 2,ht%-380: WIDTH 2,WIDTH(1) FONT_NAME 1,"Lucida Console": FONT_NAME 2,"Lucida Console" MEMO 3: WIDTH 3,600: HIDE 3 ALPHA 4: TOP 4,ht%-65: LEFT 4,LEFT(2): COLOR 4,255,255,0 CAPTION 4," <- cliquez une commande ": FONT_SIZE 4,16 BUTTON 5: TOP 5,TOP(4): LEFT 5,WIDTH(0)-120: CAPTION 5,"Quitter" ON_CLICK 5,Quit ' ----- CONTAINER 10: TOP 10,ht%-370: LEFT 10,LEFT(2): WIDTH 10,WIDTH(2): HEIGHT 10,300 CAPTION 10,"TESTER UNE COMMANDE :": COLOR 10,255,255,128: FONT_BOLD 10 ALPHA 11: PARENT 11,10: TOP 11,20: LEFT 11,5: CAPTION 11,"Commande:" EDIT 12: PARENT 12,10: TOP 12,TOP(11)-3: LEFT 12,80: WIDTH 12,WIDTH(10)-100 FONT_NAME 12,"Lucida Console": FONT_SIZE 12,12 ALPHA 13: PARENT 13,10: TOP 13,TOP(11)+28: LEFT 13,5: CAPTION 13,"Arguments:" EDIT 14: PARENT 14,10: TOP 14,TOP(13)-3: LEFT 14,LEFT(12): WIDTH 14,WIDTH(12) FONT_NAME 14,"Lucida Console" BUTTON 15: PARENT 15,10: TOP 15,TOP(14)+25: LEFT 15,WIDTH(10)/2-40 CAPTION 15,"Exécuter": ON_CLICK 15,Test ALPHA 16: PARENT 16,10: TOP 16,TOP(15)+15: LEFT 16,5: CAPTION 16,"Résultat:" LIST 17: PARENT 17,10: TOP 17,TOP(16)+15: LEFT 17,5: WIDTH 17,WIDTH(10)-10 HEIGHT 17,HEIGHT(10)-110: FONT_NAME 17,"Lucida Console": FONT_BOLD_OFF 17 ' ------ EXECUTE_WAIT ps$+" Get-Command | clip" CLIPBOARD_PASTE 3 FOR i% = 2 TO COUNT(3): ITEM_ADD 1,ITEM_READ$(3,i%): NEXT i%
EXECUTE_WAIT ps$+" $Host.version.major | clip" CAPTION 0,CAPTION$(0)+CLIPBOARD_STRING_PASTE$ END
Quit: TERMINATE
Commande: a$ = ITEM_INDEX$(1): a$ = RTRIM$(MID$(a$,17,31)) EXECUTE_WAIT ps$+" Get-Help "+a$+" | clip" CLEAR 3: CLIPBOARD_PASTE 3: CLEAR 2 FOR i% = 1 TO COUNT(3): ITEM_ADD 2,ITEM_READ$(3,i%): NEXT i% TEXT 12,a$ RETURN
Test: a$ = TEXT$(12) arg$ = TEXT$(14) EXECUTE_WAIT ps$+" "+a$+" "+arg$+" | clip" CLEAR 3: CLIPBOARD_PASTE 3 CLEAR 17: FOR i% = 1 TO COUNT(3): ITEM_ADD 17,ITEM_READ$(3,i%): NEXT i% RETURN
' Sites utiles en rapport: ' http://syskb.com/powershell-pour-les-nuls/ ' http://windows.developpez.com/cours/?page=powershell 18h20 ajout de la possibilité de tester une fonction donnée
Dernière édition par JL35 le Ven 18 Sep 2015 - 21:39, édité 2 fois | |
|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Powershell Ven 18 Sep 2015 - 15:32 | |
| | |
|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 18 Sep 2015 - 15:56 | |
| Merci JL35, c' est effectivement à méditer... | |
|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Powershell Ven 18 Sep 2015 - 18:24 | |
| J'ai ajouté là-haut la possibilité de tester la fonction actuellement affichée: il suffit de rentrer les paramètres éventuels de la fonction, puis 'Exécuter': le résultat éventuel s'affiche dans la fenêtre au-dessous. Attention toutefois: il y a certainement des fonctions dont il vaut mieux connaître les effets avant de les exécuter, ça pourrait faire des dégâts ! Mais enfin, on est programmeurs, on sait ce qu'on fait ! en principe... PS j'ai aussi ajouté l'affichage du numéro de version de powershell (dans l'en-tête de fenêtre) | |
|
Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Powershell Ven 18 Sep 2015 - 19:58 | |
| Très bien le programme de test. Je sens que l'on va trouver des fonctions bien utiles sous peu | |
|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Ven 18 Sep 2015 - 20:21 | |
| Super ce petit prog de test ! merci JL35. | |
|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Powershell Ven 18 Sep 2015 - 21:46 | |
| C'est expérimental, donc pour jouer avec. J'ai encore modifié là-haut pour ajuster les dimensions. Je suis sous 7 et j'ai essayé sur un portable de base sous W8.1 avec un écran de 1366x768 (c'est riquiqui), et ça faisait apparaître des ascenseurs gênants, alors j'ai essayé d'optimiser, ça devrait marcher partout. Le portable est vraiment bas de gamme et assez lent, alors les fenêtres powershell qui apparaîssent à l'exécution persistent assez longtemps, il ne faut pas s'impatienter. Sous W7 ces fenêtres sont noires et assez discrètes, sous W8 elles sont bleues et occupent tout l'écran en hauteur... encore un progrès de W8. Pour W10... je n'ai pas encore sauté le pas... | |
|