Est-il possible de modifier la valeur par défaut de $profil à une nouvelle valeur?
Donc je préfère ne pas créer mon fichier de profil ici:
C:\Users\fmerrow\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Je veux dire, ne vous méprenez pas, ce n'est pas la fin du monde et je peux vivre avec ça. Cependant, je tiens à garder la racine "Mes Documents" raisonnablement maigres et vraiment, je préfère ne pas créer un répertoire à chaque fois, j'ai commencer à utiliser une nouvelle application.
J'ai fouiné autour de la recherche à l'endroit où ce paramètre peut être caché, mais jusqu'à présent aucune chance. Il ne semble pas être dans le registre ou à l'un des $PsHome
fichiers.
Faire, je dois juste apprendre à vivre avec cela? . . . ou est-il un moyen pour modifier la valeur de $profil qui "collent" sur ce système pour tous les temps? C'est-à-changement de la "valeur par défaut" de $profile
?
Le meilleur que j'ai pensé jusqu'à présent, c'est d'ignorer $profile
et au lieu de mettre du code dans $profile.AllUsersAllHosts
à la source/exécuter mon fichier de l'endroit où je veux le mettre à la place de la valeur par défaut $emplacement du profil.
Des commentaires et/ou suggestions bienvenues.
Frank
Merci pour le pointeur . . . bien que dans la recherche, je ne vois pas une meilleure solution que ce qui est proposé ci-dessous. Bien que les affiches raisons sont beaucoup plus convaincant que le mien . . . Dans ce cas, il n'est pas juste une préférence.
Si vous avez trouvé une solution, génial. Qu'est-ce que $profil.AllUsersAllHosts alors et comment voulez-vous modifier?
OriginalL'auteur Frank Merrow | 2011-02-23
Vous devez vous connecter pour publier un commentaire.
Je pense que votre solution à la source de votre "nouveau" profil " dans le profil existant est probablement aussi bonne que vous allez obtenir.
J'ai juste ne peux pas croire que MS codé en dur cet emplacement! Comment sommes-nous censés garder notre développement trucs séparé de tout le reste?
La racine de la Boucle réponse ci-dessous a été en mesure de résoudre mon problème
OriginalL'auteur Mike Shepard
La seule chose que je peux penser à est de "point approvisionnement" de votre profil à l'powershell invocation.
Par exemple:
En modifiant le script qui l'invoque,-l'expression de points de commande pour vous pouvez placer votre "profil" importe où vous le souhaitez. Ensuite, créer un raccourci qui lance PowerShell et définir la cible de la commande ci-dessus.
c'est pourquoi je propose la création d'un raccourci que vous pouvez mettre sur le bureau ou le menu démarrer.
Pour faire référence à un double ticky (") est la séquence d'échappement pour un seul ticky à l'intérieur de tickies. M'a fallu une seconde pour comprendre ce qui se passait.
le fichier de paramètre de point-source d'un fichier pour vous
OriginalL'auteur zdan
Essayez les jonctions par l'exécution de cette commande powershell:
Pour plus d'informations sur les jonctions voir ici.
mklink /D
OriginalL'auteur user1331496
Vous pouvez également mettre votre fichier de profil ici
Si vous voulez avoir un séparé de l'emplacement pour l'ensemble de vos profils et des scripts, vous pouvez modifier votre profil.ps1 fichier ci-dessus comme
Assurez-vous que ce type de profil que vous utilisez, voir les détails ici
https://technet.microsoft.com/en-ca/library/dd819434.aspx
OriginalL'auteur Root Loop
Selon le scripteur de l'article La compréhension de la Six Profils de PowerShell,
$profile
est élargi à partir de$PsHome\Microsoft.PowerShell_profile.ps1
;$pshome
est le répertoire d'installation de powershell et en lecture seule variable; selon un post sur cette fil, Microsoft nous dit que cela ne peut pas être modifié.Je upvoted parce que je crois que c'est pertinent, mais seulement la
AllUsers
profils sont dérivées à partir depshome
. Une OP est intéressé en est dérivé de "$Home[Ma ]Documents", comme indiqué ici: blogs.technet.microsoft.com/heyscriptingguy/2012/05/21/...OriginalL'auteur Yevgeniy
Vous pouvez modifier votre
$Profile.CurrentUser*
chemins d'accès en modifiant votre dossier personnel cheminEnvironment.GetFolderPath(Environment.SpecialFolder.Personal)
Soit par l'intermédiaire de
regedit
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
Sous le Nom de sélection de colonne
Personal
et chage de la valeur à l'endroit où vous voulez que votre profil.Ou via
PowerShell
New-ItemProperty
'HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders'
Personal -Value 'Your New Path Here' -Type ExpandString -Force
Vous devez redémarrer le système pour que cela prenne effet.
OriginalL'auteur Neck Beard
Ce serait peut-être plus d'une solution de contournement, mais ce que j'ai fait a été de créer un lien symbolique copie de la WindowsPowerShell répertoire à l'emplacement PowerShell était à la recherche d'. Ce n'est plus un bandaid technique.
OriginalL'auteur Kevin Bridges
Cette solution est inspirée par RootLoop réponse:
Accéder à votre profil en accédant à son emplacement défini par $PROFIL. Ensuite, copiez-le à l'emplacement où vous souhaitez enregistrer (C:/NewLocation/profile.ps1). Remplacez-la par le contenu du profil avec le texte:
Rappelez-vous que le profil est juste un script qui est exécuté dès que vous ouvrez powershell. Ce script ci-dessus va d'abord définir $profil vers le nouvel emplacement, de sorte que toutes les références à l' $profil variable de la même façon que si vous l'avez déplacé. La prochaine ligne de code invoquer le nouveau profil avec une syntaxe qui est appelé point approvisionnement. Effectivement, l' . $profil de la ligne est juste en cours d'exécution de votre nouveau profil code.
Ensuite, vous pouvez réduire l'encombrement dans votre répertoire Mes Documents en cachant le Powershell dossier. Faites simplement un clic droit sur le dossier, sélectionnez "propriétés", puis sous l'onglet général, sélectionnez l'option "caché".
OriginalL'auteur Josh Desmond