¿Hay alguna forma de cambiar la ubicación predeterminada de PowerShell?
¿Cómo se configura el directorio de trabajo predeterminado de PowerShell?
windows
powershell
Youbloodywombat
fuente
fuente
Respuestas:
Puede especificar el directorio para abrir al iniciar PowerShell:
Úselo en su atajo.
O use un perfil para establecer un directorio de inicio.
fuente
pwsh.exe -WorkingDirectory C:\YourLocation\Goes\Here
Cree un perfil de PowerShell de la siguiente manera.
Ejecute PowerShell como administrador y ejecute el siguiente comando:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
Esto permitirá que PowerShell ejecute scripts locales y scripts descargados de Internet que hayan sido firmados. Lea más sobre este comando en la documentación .
En su
Documents
carpeta, busque una carpeta con el nombreWindowsPowerShell
de PowerShell clásico oPowerShell
de PowerShell Core más nuevo. Si no existe, está bien; solo créalo.profile.ps1
en laWindowsPowerShell
carpeta (oPowerShell
para PowerShell Core).Abra
profile.ps1
y agregue el siguiente comando para configurar su directorio de trabajo predeterminado:Abra una nueva ventana de PowerShell ... los cambios deberían haber surtido efecto.
fuente
powershell -File "myscript.ps1"
powershel -NoProfile -File "myscript.ps1"
Probé las respuestas anteriores en Windows Server 2016 sin éxito.
Pero encontré que este enfoque (debería ser el mismo para Windows 10) funcionó para mí.
¡Hecho!
En el mismo cuadro de diálogo Propiedades , también puede cambiar muchas otras configuraciones como fuentes, colores, tamaños y en la pestaña Acceso directo a través del botón Advanced. Puede seleccionar si esa sesión de PowerShell se ejecutará con privilegios de administrador.
fuente
Run as administrator
el.lnk
menú avanzado. La solución parece estar aquí stackoverflow.com/questions/31622469/…Run as aministrator
casilla de verificación de un lado a otro.Una forma más sencilla de establecer el directorio predeterminado es la siguiente:
Haga clic con el botón derecho en el icono de Windows PowerShell en Inicio, y nuevamente haga clic con el botón derecho en Windows PowerShell y seleccione Propiedades (no Ejecutar como administrador y no Windows PowerShell ISE )
fuente
Poner
Set-Location
en su perfil cambiará incondicionalmente el directorio de trabajo actual, lo que podría tener consecuencias no deseadas con respecto al directorio de trabajo para los scripts que ejecuta a través de "ejecutar con PowerShell".Una solución alternativa es cambiar el directorio de trabajo de los
.lnk
archivos a PowerShell que generalmente se encuentra en%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Windows PowerShell
. Haga clic con el botón derecho en un enlace y cambie el directorio de trabajo%HOMEDRIVE%%HOMEPATH%
del directorio que desee.fuente
Run as administrator
el.lnk
menú avanzado. La solución parece estar aquí stackoverflow.com/questions/31622469/…-NoProfile
opción comopowershell -NoProfile -File "myscript.ps1"
Escriba esto en PowerShell:
Crea un archivo .ps1 en la carpeta PowerShell. Ábrelo y edítalo como:
Hecho
Consulte este enlace. Funciona bien.
Cambiar el directorio de inicio de PowerShell
fuente
En lugar de cambiar incondicionalmente el directorio de trabajo como se menciona en las respuestas anteriores, puede escribir una función simple en el perfil de PowerShell para usarla
Set-Location
para cambiar rápidamente el directorio de trabajo cuando sea necesario.Consulte la respuesta de Jeremy Danyow para crear / modificar un perfil de PowerShell.
Agregue una (s) función (es) a su perfil de PowerShell:
Simplemente cambie el nombre de la función y el directorio al que apunta. El uso de comillas en la ruta es obligatorio si contiene espacios. Intento mantener el prefijo,
goto_
ya que ayuda a recordar los nombres de las funciones.Puede comenzar a escribir y
goto_
luego presionar TAB para recorrer todas las funciones agregadas (recuerde iniciar una nueva ventana de PowerShell después de agregar / modificar funciones).fuente
Usando solo la línea de comando, si un archivo ya existe, se agregará a él:
fuente
Con eso, parece haber cierta confusión sobre el "directorio de trabajo" y la "ubicación" de PowerShell. Lo que la mayoría de la gente aquí está haciendo y diciendo es cambiar la "ubicación" de PowerShell. El "directorio de trabajo" es realmente diferente. Aquí hay un artículo que lo explica.
Para aquellos que no quieren leer el artículo: Abra PowerShell y use lo que otros han dicho que haga
Set-Location "C:\some\directory"
. Tenga en cuenta que su "directorio de trabajo" todavía está donde se abrió su PowerShell. Ya sea"~"
o"%SYSTEMROOT%\system32"
dependiendo de si se ejecutó como administrador o no. Para verificar el directorio de trabajo, use[Environment]::CurrentDirectory
.Nota: en el artículo, el autor dice que verifique el "directorio de trabajo" usando este comando:
No estoy seguro de si esto funciona con versiones anteriores de PowerShell, pero con PowerShell 5 (y posterior) debe usar
[Environment]::CurrentDirectory
.fuente
Haga que esta sea la primera línea en su Profile.ps1 y PowerShell Core (pwsh) se abrirá en el directorio en el que está trabajando actualmente:
set-location (obtener-ubicación) .path
fuente
Salida de escritura "Establecer ubicación C: \" >> $ perfil
fuente
Esta solución establece la carpeta de trabajo actual en la ubicación donde se encuentra el script. Asegúrese de colocarlo al principio de su secuencia de comandos, o al menos antes de intentar usar el comando basándose en la ruta de ubicación.
fuente