¿Cómo puedo configurar PowerShell ISE para que abra pestañas para cada archivo que se abrió previamente cuando lo cerré?
Esto es particularmente útil ya que normalmente vuelvo a trabajar en el mismo script o conjunto de scripts.
¿Cómo puedo configurar PowerShell ISE para que abra pestañas para cada archivo que se abrió previamente cuando lo cerré?
Esto es particularmente útil ya que normalmente vuelvo a trabajar en el mismo script o conjunto de scripts.
Respuestas:
Desafortunadamente, no pude hacer que esto funcione automáticamente / en un temporizador. Utiliza la $psISE
variable a la que no puedo entender cómo acceder a través de trabajos en segundo plano o eventos registrados.
Debe editar su perfil ISE, es posible que necesite crearlo y generalmente vive en C: \ Users_USERNAME_ \ Documents \ WindowsPowerShell \ Microsoft.PowerShellISE_profile.ps1
Primero, especifique dónde guardar la información sobre lo que tenía abierto:
$SavePath = Join-Path -Path (Split-Path -Path $profile) -ChildPath 'openFiles.txt'
Eso terminará yendo en un archivo txt en la misma carpeta que el perfil.
Luego verifique la existencia de los archivos y abra los archivos que figuran en él.
if (Test-Path -Path $SavePath)
{
$OpenFiles = Import-Csv -Path $SavePath
psEdit -filenames $OpenFiles
}
La pieza final del rompecabezas es una función que toma los archivos abiertos actuales y descarga los caminos completos en el archivo txt.
function Save-OpenFile {
$Files = @()
foreach ($Tab in $psISE.PowerShellTabs)
{
foreach ($File in ($Tab.Files | Where-Object { !$_.IsUntitled }))
{
$Files += $File.FullPath
}
}
$Files | Out-File -FilePath $SavePath
}
Ejecute de Save-OpenFile
vez en cuando (y antes de cerrar el ISE) y lo que tenía abierto en ese momento se volverá a abrir. Como dije al comienzo de esta publicación, sería genial si pudieras activar esto automáticamente cuando el ISE se cierre, pero no podría acceder a la información dentro de un evento como ese.
Puede simplificar las cosas agregando un alias para la función, o haciendo otra cosa para agregarlo a su flujo de trabajo habitual, de modo que se convierta en un hábito que lo ejecute regularmente.
Espero que esto ayude o lo inicie en el camino para obtener una solución completa.
Nota: Algunos editores alternativos de PowerShell volverán a abrir sus documentos entre sesiones, por lo que si está decidido, puede investigarlos como opciones.