Digamos que tengo los siguientes archivos en mi directorio actual:
buildBar.bat
buildFoo.bat
buildHouse.bat
Y escribo lo siguiente en mi símbolo del sistema, ./bu
y luego TAB.
En Bash, se expande a
./build
En PowerShell, se expande al
./buildBar.bat
primer elemento de la lista.En Cmd, el comportamiento es el mismo que en PowerShell.
Prefiero el comportamiento Bash: ¿hay alguna manera de hacer que PowerShell se comporte como Bash?
powershell
cmd
tab-completion
RobSiklos
fuente
fuente
bash
;)Respuestas:
Las nuevas versiones de PowerShell incluyen PSReadline, que se puede usar para hacer esto:
Para hacerlo permanente, coloque este comando en C: \ Users \ [User] \ Documents \ WindowsPowerShell \ profile.ps1.
fuente
MenuComplete
en lugar deComplete
es más como bash, le permite usar las teclas de flecha para elegir entre las opciones disponiblesnew-item $profile -itemtype file -force
C:\Users\[User]\Documents\WindowsPowerShell\profile.ps1.
Realmente necesita ejecutarnew-item $profile -itemtype file -force
touch
:-(Ahora es posible hacer que PowerShell realice una finalización al estilo Bash, usando PSReadline.
Consulte la publicación de blog sobre la finalización de pestañas similar a Bash en PowerShell .
fuente
Eche un vistazo aquí, no es realmente su desiderata:
PowerTab
¡Pero creo que es la mejor función de expansión de pestañas para la consola PowerShell!
fuente
tab
solo completa el nombre del comando, no sus argumentos / parámetros anteriores.para también autocompletar el comando completo con argumentos del historial, configure la combinación de teclas a continuación.
Ahora, escriba algunos caracteres del nombre del comando y use las flechas arriba / abajo para autocompletar este comando (con argumentos) del historial.
ahorro de tiempo real.
fuente
Modifique la función TabExpansion para lograr lo que desea. Recuerde que quizás se complete hasta el final si presiona tabulador nuevamente la nueva sugerencia modifica desde donde originalmente presionó la tecla. Prefiero mucho el comportamiento real, quiero que la línea se escriba lo más rápido posible. Finalmente, no olvide la expansión de comodines, por ejemplo: bu * h [Tab] se completa automáticamente para buildHouse.bat
fuente
Con Powershell Core podemos establecer la propiedad PredictionSource para PSReadLine como Historial para obtener sugerencias automáticas. Consulte el video de YouTube para obtener más detalles https://youtu.be/I0iIZe0dUNw
fuente
fuente