¿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\HereCree un perfil de PowerShell de la siguiente manera.
Ejecute PowerShell como administrador y ejecute el siguiente comando:
Set-ExecutionPolicy -ExecutionPolicy RemoteSignedEsto 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
Documentscarpeta, busque una carpeta con el nombreWindowsPowerShellde PowerShell clásico oPowerShellde PowerShell Core más nuevo. Si no existe, está bien; solo créalo.profile.ps1en laWindowsPowerShellcarpeta (oPowerShellpara PowerShell Core).Abra
profile.ps1y 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 administratorel.lnkmenú avanzado. La solución parece estar aquí stackoverflow.com/questions/31622469/…Run as aministratorcasilla 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-Locationen 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
.lnkarchivos 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 administratorel.lnkmenú avanzado. La solución parece estar aquí stackoverflow.com/questions/31622469/…-NoProfileopció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-Locationpara 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