Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
790 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2  3  4  5  6  7  8
Page Suivante
Auteur Sujet :

Powershell[Topic Unik]

n°2479925
gamer-fou
AHHHHHH§§§!!!
Posté le 19-09-2024 à 12:28:33  profilanswer
 

Reprise du message précédent :

gamer-fou a écrit :


Normalement ça n'empêche pas d'exécuter des commandes unitaires dans l'invite de commande powershell ni d'utiliser Powershell ISE



---------------
Music is the most high!
mood
Publicité
Posté le 19-09-2024 à 12:28:33  profilanswer
 

n°2479926
david42fr
Posté le 19-09-2024 à 12:56:31  profilanswer
 

Effectivement ça permet de tester, merci!

 


EDIT : je vous avais prévenu que je partais de loin et avec la vieillesse.... :o


Message édité par david42fr le 19-09-2024 à 12:56:57

---------------
A life spent making mistakes is not only more honorable, but more useful than a life spent doing nothing. -- Shaw -- mon topic de vente photo
n°2480199
lestat67se​l
:-)
Posté le 24-09-2024 à 15:57:33  profilanswer
 

Je@nb a écrit :


 
Là comme je vois pas de difficulté, tout est documenté https://pnp.github.io/powershell/cm [...] nline.html


 
La difficulté c'est que quand tu mets en oeuvre la moitié des méthodes indiqué dans le lien, soit c'est déjà déprécié (genre avec un credential depuis le 09/09/2024 :o), ou c'est annoncé pour l'être:
Ma version actuel c'est avec un ClientID/Secret: c'est indiqué pour être déconnecté d'ici 2026.
 
Du coup j'veux bien adapter, mais je sais pas dans quelle direction il faut aller pour avoir une méthode pérenne qui tombe pas en rade quand ca chantera MS de changé les méthodes possible ..

n°2480201
gamer-fou
AHHHHHH§§§!!!
Posté le 24-09-2024 à 16:17:03  profilanswer
 

J'ai pas vu passer l'info concernant le client/secret pour 2026, je veux bien un lien?
Mais j'imagine que ça continuera à être bon avec un certificat à la place du secret


---------------
Music is the most high!
n°2480204
lestat67se​l
:-)
Posté le 24-09-2024 à 17:07:04  profilanswer
 

gamer-fou a écrit :

J'ai pas vu passer l'info concernant le client/secret pour 2026, je veux bien un lien?
Mais j'imagine que ça continuera à être bon avec un certificat à la place du secret


 
Quand tu l'utilises:
https://img.super-h.fr/images/2024/09/24/275a5c2b29f8a6d5acd7c05121f7dbe4.png
 
ca renvoit vers là:
https://pnp.github.io/powershell/ar [...] ation.html
 
Bon et au final après ma dernière session de bidouille aujourd'hui j'ai un truc qui semble fonctionnel et j'ai pas eu de warning de dépréciation youhou :o
A toute fin utile, je suis partis de ça: :jap:
https://heusser.pro/p/powershell-sc [...] tbunyoa85/
 
Edit: mybad 2026 c'est en utilisant un login/mdp ? Mais j'ai pas de capture. Je sais plus trop avec toutes les modifs tentés

Message cité 1 fois
Message édité par lestat67sel le 24-09-2024 à 17:12:27
n°2487585
arnuche
Posté le 23-12-2024 à 22:16:05  profilanswer
 

Salut,
 
je voudrais mettre une commande PS dans un fichier bat mais pas moyen de le faire fonctionner (sur Windows 10 Pro 64 bits).
Quand je double-clique dessus j'ai bien l'invite de commandes qui apparaît furtivement mais ça reste sans effet.
 
C'est pour virer des lignes contenant un mot dans des fichiers txt ; si je mets ceci dans PS, ça marche (vire les lignes contenant le mot "roue" ) ;

Code :
  1. get-childitem -Filter *.txt -Path "M:\divers\" | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern "roue" -notmatch | set-content $tempvar}


Trouvé là ;
https://www.relentlessrevolutions.c [...] e-precise/
 
Mais pour le faire fonctionner à partir d'un bat, j'ai vu qu'il fallait rajouter quelques trucs, du genre ;

Code :
  1. powershell.exe -ExecutionPolicy RemoteSigned -Command "& {get-childitem -Filter '*.txt' -Path "M:\divers\" | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern "roue" -notmatch | set-content $tempvar}}


ou avec l'adresse complète de PS (j'ai aussi testé System32) ;

Code :
  1. C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy RemoteSigned -Command "& {get-childitem -Filter '*.txt' -Path "M:\divers\" | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern "roue" -notmatch | set-content $tempvar}}


 
Voir notamment ce post ;
https://www.bleepingcomputer.com/fo [...] ?p=5340764
 
J'ai testé plusieurs variantes, rien ne marche  :??:  
 
Le but est d'intégrer ça à un bat qui contient d'autres commandes (rien à voir avec PS) mais je voudrais déjà en faire fonctionner au moins une.

Message cité 1 fois
Message édité par arnuche le 23-12-2024 à 22:20:45
n°2487629
lestat67se​l
:-)
Posté le 24-12-2024 à 18:33:58  profilanswer
 

arnuche a écrit :

Salut,
 
je voudrais mettre une commande PS dans un fichier bat mais pas moyen de le faire fonctionner (sur Windows 10 Pro 64 bits).
Quand je double-clique dessus j'ai bien l'invite de commandes qui apparaît furtivement mais ça reste sans effet.
 
C'est pour virer des lignes contenant un mot dans des fichiers txt ; si je mets ceci dans PS, ça marche (vire les lignes contenant le mot "roue" ) ;

Code :
  1. get-childitem -Filter *.txt -Path "M:\divers\" | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern "roue" -notmatch | set-content $tempvar}


Trouvé là ;
https://www.relentlessrevolutions.c [...] e-precise/
 
Mais pour le faire fonctionner à partir d'un bat, j'ai vu qu'il fallait rajouter quelques trucs, du genre ;

Code :
  1. powershell.exe -ExecutionPolicy RemoteSigned -Command "& {get-childitem -Filter '*.txt' -Path "M:\divers\" | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern "roue" -notmatch | set-content $tempvar}}


ou avec l'adresse complète de PS (j'ai aussi testé System32) ;

Code :
  1. C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy RemoteSigned -Command "& {get-childitem -Filter '*.txt' -Path "M:\divers\" | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern "roue" -notmatch | set-content $tempvar}}


 
Voir notamment ce post ;
https://www.bleepingcomputer.com/fo [...] ?p=5340764
 
J'ai testé plusieurs variantes, rien ne marche  :??:  
 
Le but est d'intégrer ça à un bat qui contient d'autres commandes (rien à voir avec PS) mais je voudrais déjà en faire fonctionner au moins une.


 
C'est une histoire de quote et de double quote, tes doubles quotes à l'intérieur de ton instruction command 'termine' la double quote du début >> il ne faut pas mélanger.
 
Si tu test avec ça:
 

Code :
  1. powershell.exe -ExecutionPolicy RemoteSigned -Command "& {get-childitem -Filter '*.txt' -Path 'E:\' | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern 'roue' -notmatch | set-content $tempvar}}"


 
Ca marche ;)
 

lestat67sel a écrit :


 
Quand tu l'utilises:
https://img.super-h.fr/images/2024/ [...] f7dbe4.png
 
ca renvoit vers là:
https://pnp.github.io/powershell/ar [...] ation.html
 
Bon et au final après ma dernière session de bidouille aujourd'hui j'ai un truc qui semble fonctionnel et j'ai pas eu de warning de dépréciation youhou :o
A toute fin utile, je suis partis de ça: :jap:
https://heusser.pro/p/powershell-sc [...] tbunyoa85/
 
Edit: mybad 2026 c'est en utilisant un login/mdp ? Mais j'ai pas de capture. Je sais plus trop avec toutes les modifs tentés


 
Si jamais je me répond à moi même, si jamais ca peut servir à d'autre, pour upload un fichier sur un Sharepoint online, le plus simple et effectif c'est de passer par MsGraph:

Code :
  1. # On se connect à MsGraph
  2. $Header = Connect-MgGraphHTTP -TenantId $TenantId -AppId $AppId -AppSecret $AppSecret
  3. # On récupère l'ID du site
  4. $site = Invoke-RestMethod -Method Get -Headers $Header -Uri "https://graph.microsoft.com/v1.0/sites?search=$siteName"
  5. # On récupère tous les 'Drives' du site
  6. $drives = Invoke-RestMethod -Method Get -Headers $Header -Uri "https://graph.microsoft.com/v1.0/sites/$siteId/drives"
  7. # Et finalement l'ID de la Document Library
  8. $driveId = ($drives.value | Where-Object { $_.Name -eq $SiteLibrary}).Id
  9. # On charge le fichier dans une variable
  10. $fileContent = [System.IO.File]::ReadAllBytes($a.FullName)
  11. # On upload le fichier
  12. Invoke-RestMethod -Method PUT -Uri "https://graph.microsoft.com/v1.0/drives/$driveId/root:/$SiteFolder/$destinationName`:/content" -Body $fileContent -ContentType "application/octet-stream" -Headers $Header


 
Ca suppose juste d'avoir découpé au préalable l'URL de la document library en Site/Library/Folder

Message cité 1 fois
Message édité par lestat67sel le 24-12-2024 à 18:42:41
n°2487662
arnuche
Posté le 25-12-2024 à 10:59:26  profilanswer
 

lestat67sel a écrit :

C'est une histoire de quote et de double quote, tes doubles quotes à l'intérieur de ton instruction command 'termine' la double quote du début >> il ne faut pas mélanger.
 
Si tu test avec ça:
 

Code :
  1. powershell.exe -ExecutionPolicy RemoteSigned -Command "& {get-childitem -Filter '*.txt' -Path 'E:\' | foreach-object {$tempvar = $_.fullname; (get-content $tempvar) | select-string -pattern 'roue' -notmatch | set-content $tempvar}}"


 
Ca marche ;)


Merci mais même comme ça il ne se passe rien  :??:  
J'ai aussi tenté d'enlever "-ExecutionPolicy RemoteSigned" ou de mettre le chemin complet de powershell.exe, rien n'y fait  :o
 
EDIT : j'ai trouvé, il y avait des accents sur des e dans le nom du dossier, en les virant ça marche !  :)  
J'avais mis M:\divers\ pour l'exemple mais le nom réel était plus long.
 
Un moyen de faire marcher ça avec les accents ?
 
EDIT 2 : trouvé  :) , il faut rajouter cette ligne au début du script ;

Code :
  1. CHCP 65001>nul


Message édité par arnuche le 25-12-2024 à 12:06:25
n°2487674
lestat67se​l
:-)
Posté le 25-12-2024 à 14:17:24  profilanswer
 

:jap:
 
(les char spéciaux dans les chemins c'est la mal :o )


Message édité par lestat67sel le 25-12-2024 à 14:17:46
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  6  7  8
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
Créer un lien hypertexte en powershellRemplacer une lettre dans .txt POWERSHELL
Comment faire un saut à la ligne PowershellRécupérer la date du résultat [POWERSHELL]
[POWERSHELL] Récupérer les utilisateurs sur un serveur TSE[Powershell] Récupérer SID
Faire des scripts quant ta 0 connaissance =( PowerShell[PowerShell] Script de colorisation de syllabes
Powershell - unrestricted mais erreur de droits d'execution[Powershell] recuperer un argument
Plus de sujets relatifs à : Powershell[Topic Unik]


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)