Está en la página 1de 7

TEMA

about_Profiles
DESCRIPCIN BREVE
Describe cmo crear y utilizar un perfil de Windows PowerShell.
DESCRIPCIN DETALLADA
Puede crear un perfil de Windows PowerShell para personalizar su
entorno y agregar elementos especficos de la sesin a cada
sesin de Windows PowerShell que inicie.
Un perfil de Windows PowerShell es un script que se ejecuta
cuando se inicia Windows PowerShell. Puede utilizar el perfil
como un script de inicio de sesin para personalizar el entorno.
Puede agregar comandos, alias, funciones, variables,
complementos, mdulos y unidades de Windows PowerShell. Asimismo,
puede agregar al perfil otros elementos especficos de la sesin
de modo que estn disponibles en cada sesin sin tener que
importarlos ni volver a crearlos.
Windows PowerShell admite varios perfiles para los usuarios y
programas host.Sin embargo, no crea los perfiles. En este tema
se describen los perfiles y se explica cmo crear y mantener
los perfiles en el equipo.
Se explica cmo usar el parmetro NoProfile de la consola de
Windows PowerShell (PowerShell.exe) para iniciar Windows
PowerShell sin ningn perfil.Adems, se explica el efecto
de la directiva de ejecucin de Windows PowerShell en los perfiles.
ARCHIVOS DE PERFIL
Windows PowerShell admite varios archivos de perfil. Asimismo,
los programas host de Windows PowerShell admiten sus propios
perfiles especficos del host.
Por ejemplo, la consola de Windows PowerShell admite los
siguientes archivos de perfil bsicos. Los perfiles se muestran
en orden de precedencia. El primer perfil tiene la mayor precedencia.
Descripcin
----------Usuario actual, Host actual
Shell\Profile.ps1
Usuario actual, Todos los hosts
Todos los usuarios, Host actual
e.ps1
Todos los usuarios, Todos los hosts

Ruta de acceso
---$Home\[Mis ]Documentos\WindowsPower
$Home\[Mis ]Documentos\Profile.ps1
$PsHome\Microsoft.PowerShell_profil
$PsHome\Profile.ps1

Las rutas de acceso de los perfiles incluyen las variables siguientes:


- La variable $PsHome, que almacena el directorio de
instalacin de Windows PowerShell.
- La variable $Home, que almacena el directorio particular
del usuario actual.

Adems, otros programas que hospedan Windows PowerShell admiten


sus propios perfiles. Por ejemplo, el programa Entorno de
scripting integrado (ISE) de Windows PowerShell admite los
siguientes perfiles especficos del host.
Descripcin
----------Usuario actual, Host actual
l\Microsoft.PowerShellISE_profile.ps1
Todos los usuarios, Host actual
.ps1

Ruta de acceso
----$Home\[Mis ]Documentos\WindowsPowerShel
$PsHome\Microsoft.PowerShellISE_profile

En la Ayuda de Windows PowerShell, el perfil "Usuario actual,


Host actual" suele denominarse "su perfil de Windows PowerShell".
VARIABLE $PROFILE
La variable automtica $Profile almacena las rutas de acceso a
los perfiles de Windows PowerShell que estn disponibles en la
sesin actual.
Para ver la ruta de acceso a un perfil, debe mostrar el valor de
la variable $Profile. Asimismo, puede utilizar la variable
$Profile en un comando para representar una ruta de acceso.
La variable $Profile almacena la ruta de acceso al perfil
"Usuario actual, Host actual". Los otros perfiles se guardan en
las propiedades adicionales de la variable $Profile.
Por ejemplo, la variable $Profile tiene los valores siguientes en
la consola de Windows PowerShell.
Nombre
----------$Profile
$Profile.CurrentUserCurrentHost
$Profile.CurrentUserAllHosts
$Profile.AllUsersCurrentHost
$Profile.AllUsersAllHosts

Descripcin
----------Usuario actual, Host actual
Usuario actual, Host actual
Usuario actual, Todos los hosts
Todos los usuarios, Host actual
Todos los usuarios, Todos los hosts

Dado que los valores de la variable $Profile cambian segn el


usuario y la aplicacin host, asegrese de mostrar los valores de
las variables de perfil en cada aplicacin host de Windows
PowerShell que utilice.
Para ver los valores actuales de la variable $Profile, escriba:
$profile | get-member -type noteproperty
Puede utilizar la variable $Profile en muchos comandos. Por
ejemplo, el comando siguiente abre el perfil "Usuario actual,
Host actual" en Bloc de notas:

notepad $profile
El comando siguiente determina si se ha creado un perfil "Todos
los usuarios, Todos los hosts" en el equipo local:
test-path $profile.AllUsersAllHosts
CMO CREAR UN PERFIL
Para crear un perfil de Windows PowerShell, utilice el siguiente
formato de comando:
if (!(test-path <nombre del perfil>))
{new-item -type file -path <nombre del perfil> -force}
Por ejemplo, si desea crear un perfil para el usuario actual en
la aplicacin host actual de Windows PowerShell, utilice el
comando siguiente:
if (!(test-path $profile))
{new-item -type file -path $profile -force}
En este comando, la instruccin If evita que se sobrescriba un
marcador de posicin existente con la ruta de acceso. Reemplace
el valor del marcador de posicin <ruta de acceso al perfil> con
la ruta de acceso al archivo de perfil que desee crear.
Nota: para crear perfiles "Todos los usuarios" en Windows Vista y
versiones posteriores de Windows, inicie Windows PowerShell con
la opcin "Ejecutar como administrador".
CMO EDITAR UN PERFIL
Puede abrir cualquier perfil de Windows PowerShell en un editor
de texto, como Bloc de notas.
Para abrir en Bloc de notas el perfil del usuario actual en la
aplicacin host actual de Windows PowerShell, escriba:
notepad $profile
Para abrir otros perfiles, especifique el nombre del perfil. Por
ejemplo, para abrir el perfil de todos los usuarios de todas las
aplicaciones host, escriba:
notepad $profile.AllUsersAllHosts
Para que se apliquen los cambios, guarde el archivo de perfil y,
a continuacin, reinicie Windows PowerShell.
CMO ELEGIR UN PERFIL

Si utiliza varias aplicaciones host, coloque en su perfil


$Profile.CurrentUserAllHosts los elementos que utilice en todas las
aplicaciones host.Coloque los elementos especficos de una aplicacin host,
como un comando que establece el color de fondo de una aplicacin host,
en un perfil especfico de esa aplicacin host.
Si es un administrador encargado de personalizar Windows
PowerShell para muchos usuarios, siga estas instrucciones:
-- Almacene los elementos comunes en el perfil $profile.AllUse
rsAllHosts.
-- Almacene los elementos especficos de una aplicacin host
en los perfiles $profile.AllUsersCurrentHost especficos
de la aplicacin host.
-- Almacene los elementos de usuarios concretos en los
perfiles especficos del usuario.
Asegrese de consultar la documentacin de la aplicacin host
para comprobar si debe realizarse alguna implementacin especial
de los perfiles de Windows PowerShell.
CMO UTILIZAR UN PERFIL
Muchos de los elementos que se crean en Windows PowerShell y la
mayora de los comandos que se ejecutan afectan nicamente a la
sesin actual. Al finalizar la sesin, se eliminan esos elementos.
Entre los comandos y elementos especficos de la sesin se
encuentran las variables, las variables de preferencia, los
alias, las funciones, los comandos (excepto Set-ExecutionPolicy)
y los complementos de Windows PowerShell que se agregan a la sesin.
Para guardar estos elementos de modo que estn disponibles para
todas las sesiones futuras, agrguelos a un perfil de Windows
PowerShell.
Los perfiles tambin se suelen utilizar para guardar las
funciones, los alias y las variables de uso frecuente. Al guardar
los elementos en un perfil, puede utilizarlos en cualquier sesin
aplicable sin tener que volver a crearlos.
CMO INICIAR UN PERFIL
Cuando se abre un archivo de perfil, est en blanco. Sin embargo,
puede agregar las variables, los alias y los comandos que utilice
frecuentemente.
A continuacin figuran algunas sugerencias.
-- Agregue comandos que permitan abrir fcilmente su perfil. Esto
resulta especialmente til si usa un perfil distinto del
perfil "Usuario actual, Host actual". Por ejemplo, agregue el
siguiente comando:
function pro {notepad $profile.CurrentUserAllHosts}

-- Agregue una funcin que abra la Ayuda de Windows PowerShell en


un archivo de Ayuda HTML compilado (.chm).
function Get-CHM
{
(invoke-item $env:windir\help\mui\0409\WindowsPowerShellHelp.chm)
}
Esta funcin abre la versin en ingls del archivo .chm. Sin
embargo, puede reemplazar el cdigo de idioma (0409) para
abrir otras versiones del archivo .chm.
-- Agregue una funcin que muestre los alias de los cmdlets.
function Get-CmdletAlias ($cmdletname)
{
get-alias | Where {$_.definition -like "*$cmdletname*"} | ft Defin
ition, Name -auto
}
-- Agregue un comando Add-PsSnapin para agregar cualquier
complemento de Windows PowerShell que utilice.
-- Personalice la consola.
function Color-Console
{
$host.ui.rawui.backgroundcolor = "white"
$host.ui.rawui.foregroundcolor = "black"
$hosttime = (dir $pshome\powershell.exe).creationtime
$Host.UI.RawUI.WindowTitle = "Windows PowerShell $hostversion ($
hosttime)"
clear-host
}
Color-console
-- Agregue un smbolo del sistema personalizado de Windows
PowerShell que incluya el nombre del equipo y la ruta de
acceso actual.
function prompt
{
$env:computername + "\" + (get-location) + "> "
}
Para obtener ms informacin sobre el smbolo del sistema de
Windows PowerShell, vea about_Prompts.
PARMETRO NOPROFILE
Para iniciar Windows PowerShell sin perfiles, use el parmetro
NoProfile de PowerShell.exe, que es el programa que inicia

Windows PowerShell.
Para comenzar, abra un programa que pueda iniciar Windows
PowerShell, como Cmd.exe o la propia aplicacin Windows
PowerShell. Tambin puede utilizar el cuadro de dilogo Ejecutar
de Windows.
Escriba:
powershell -noprofile
Para obtener una lista completa de los parmetros de
PowerShell.exe, escriba:
powershell -?
PERFILES Y DIRECTIVA DE EJECUCIN
La directiva de ejecucin de Windows PowerShell determina, en
parte, si se pueden ejecutar scripts y cargar archivos de
configuracin, incluidos los perfiles. La directiva de ejecucin
predeterminada es Restricted. Evita la ejecucin de todos los
scripts, incluidos los perfiles. Si utiliza la directiva
Restricted, no se ejecuta el perfil ni se aplica su contenido.
Un comando Set-ExecutionPolicy establece y cambia la directiva de
ejecucin. Es uno de los pocos comandos que se aplica en todas
las sesiones de Windows PowerShell porque el valor se guarda en
el Registro. No es necesario establecerlo al abrir la consola ni
es preciso almacenar un comando Set-ExecutionPolicy en su perfil.
PERFILES Y SESIONES REMOTAS
Los perfiles de Windows PowerShell no se ejecutan automticamente
en las sesiones remotas, por lo que los comandos que los perfiles
agregan no estn presentes en las sesiones remotas.
Adems, la variable automtica $profile no se rellena en las
sesiones remotas.
Para ejecutar un perfil en una sesin, utilice el cmdlet
Invoke-Command.
Por ejemplo, el comando siguiente ejecuta el perfil
CurrentUserCurrentHost del equipo local en la sesin en $s.
invoke-command -session $s -filepath $profile
El comando siguiente ejecuta el perfil CurrentUserCurrentHost del
equipo remoto en la sesin en $s. Dado que no se rellena la
variable $profile, el comando utiliza la ruta de acceso explcita
al perfil.
invoke-command -session $s {invoke-expression "$home\Documentos\WindowsP
owerShell\Microsoft.PowerShell_profile.ps1"}
Despus de ejecutarse este comando, los comandos que el perfil
agrega a la sesin estarn disponibles en $s.

VEA TAMBIN
about_Automatic_Variables
about_Functions
about_Prompts
about_Execution_Policies
about_Signing
about_Remote
Set-ExecutionPolicy

También podría gustarte