J'ai certaines fonctions que j'aimerais charger par défaut lorsque j'ouvre un PowerShell administratif. Existe-t-il un équivalent à dire .bashrc
ou .profile
que je pourrais utiliser pour importer automatiquement les scripts lorsque je démarre le shell?
windows-7
windows
powershell
leeand00
la source
la source
Réponses:
L'article mentionné dans le commentaire de jehad explique qu'il existe plusieurs endroits à partir desquels PowerShell peut charger un profil, ce que vous voulez. Vous voulez probablement celui par utilisateur pour la console PowerShell normale. Le chemin par lequel PowerShell recherchera ce fichier est indiqué dans la
$profile
variable. Vous pouvez créer ce fichier et son répertoire contenant avec cette commande:Il crée un fichier appelé
Microsoft.PowerShell_profile.ps1
dans un dossier appeléWindowsPowerShell
sous votre dossier Documents. Ensuite, vous pouvez l'ouvrir avec un éditeur de texte:Tout y sera exécuté chaque fois que vous lancerez la console PowerShell, que vous soyez élevé ou non. J'ai utilisé cet autre article pour produire une fonction (que vous pouvez utiliser comme applet de commande) pour vérifier si l'instance PowerShell actuelle est élevée. Mettez ceci dans votre nouveau fichier de profil:
Cette fonction peut être utilisée dans votre expérience PowerShell normale, mais vous pouvez également l'utiliser pour exécuter uniquement des éléments dans votre script de profil lorsque vous exécutez Elevated:
Étant donné que ce fichier contient du code qui sera exécuté automatiquement même sous une instance administrative PowerShell, vous ne voulez pas que les programmes exécutés sans niveau d'accès y aient accès en écriture. Je suggère de modifier son ACL pour ne donner à votre compte d'utilisateur qu'un accès en lecture tout en permettant aux administrateurs un contrôle total. (L'héritage devra d'abord être désactivé.) Vous ne pourrez alors modifier le script qu'à partir de programmes élevés.
la source
Microsoft.PowerShell_profile.ps1
être changé en justeprofile.ps1
? Dans le premier article, il apparaît comme$Home\[My ]Documents\WindowsPowerShell\Profile.ps1