Inicio Personalización de Terminales
Post
Cancel

Personalización de Terminales

Terminal

Windows Terminal vs. PowerShell: ¿Qué los hace diferentes? 

Se ven similares, pero bajo el capó, Windows Terminal y PowerShell actúan de manera muy diferente.

Si usa Windows 10 u 11, encontrará PowerShell y Windows Terminal preinstalados en su sistema. En esencia, son esencialmente herramientas de línea de comandos para ingresar instrucciones (comandos) que le permiten realizar una variedad de tareas en su PC con Windows. Estas tareas incluyen la resolución de problemas, la automatización de tareas, la gestión de sistemas, la ejecución de diagnósticos y la administración de redes.

PowerShell es una mejora sobre el símbolo del sistema

Microsoft introdujo PowerShell en 2006 y hace todo lo que hace el símbolo del sistema (cmd) y algo más. Dado que Microsoft creó PowerShell sobre .NET Framework, puede usar lenguajes .NET, además de comandos basados ​​en texto, en la aplicación para interactuar con su sistema operativo. El lenguaje más popular para PowerShell es C# y le permite desbloquear las funciones avanzadas de la herramienta y aumentar su productividad.

Además de los comandos estándar, PowerShell tiene más de 200 cmdlets, un tipo especial de clase de C# que Microsoft define como “comandos ligeros”. Cuando PowerShell los ejecuta, devuelven un objeto .NET que puede manipular.

Esto, por ejemplo, le permite no solo interactuar con programas en su computadora que funcionan con .Net Core, sino también procesar su entrada sin tener que escribir ningún código especial o complicado.

Además, si bien PowerShell puede ejecutar archivos por lotes como cmd, también permite una mayor automatización al permitirle programar cuándo se ejecutan las tareas. De esa manera, puede alinear tareas por adelantado y hacer otras cosas mientras deja que PowerShell haga lo suyo.

Estas son solo algunas de las formas en que PowerShell es mucho más poderoso que el símbolo del sistema. Entonces, mientras que Microsoft nos trajo PowerShell para llevar CommandPrompt al siguiente nivel, ¿cuál es el propósito de Windows Terminal?

Terminal de Windows trajo BASH a Windows

 Microsoft presentó Windows Terminal en 2019 con Windows 10, y es un operador de terminal que admite casi cualquier shell de línea de comandos. La aplicación es más notable por traer una herramienta de línea de comandos a Windows que la comunidad ha envidiado durante mucho tiempo sobre Linux: BASH (Bourne Again Shell).

Además, otra gran característica de Windows Terminal es el cambio a una interfaz con pestañas más moderna que le permite ejecutar varias utilidades de línea de comandos. Por ejemplo, puede tener varias instancias de Símbolo del sistema ejecutándose o abrir cmd, PowerShell, BASH y Azure a la vez.

Además, puedes usar emojis y caracteres especiales de otros idiomas en Windows Terminal gracias a su compatibilidad con Unicode y UTF. Y con su nuevo motor de renderizado de texto de GPU acelerado, puede mostrarlos sin saltarse nada. También puede personalizar la interfaz de la aplicación dándole diferentes esquemas de color, imágenes de fondo (también admite GIF) y configuraciones.

Windows Terminal es un proyecto de código abierto y la comunidad de línea de comandos de Windows lo está desarrollando activamente. Esta es una comunidad apasionada por el proyecto y apoyará continuamente la aplicación, mejorará su rendimiento y agregará más funciones (los contribuyentes priorizarán las más solicitadas, por supuesto).

NerdFonts

Windows Terminal

  • Descargar e instalar Terminal para Windows / PowerShell TerminalTerminal

  • Abrir Terminal en windows y cambiar el perfil por defecto, inicialmente es Command Prompt. Seleccionar una de las opciones decargadas en el paso anterior

TerminalTerminal

  • Configurar preferencias por terminal por ejemplo imagen de fondo, transparencia de la ventana, tipo de fuente (NerdFont), etc.

TerminalTerminal

Oh My Posh

1
winget install JanDeDobbeleer.OhMyPosh -s winget
  • Instalacion por Usuario 
1
Install-Module oh-my-posh -Scope CurrentUser
1
notepad $PROFILE

TerminalTerminal

  • Agregrar la siguiente linea al archivo de perfil
1
oh-my-posh init pwsh | Invoke-Expression
  • Terminal hasta este momento deberia lucir asi:

TerminalTerminal

Temas de Oh My Posh

1
Get-PoshThemes
  • Editar el archivo de perfil, donde colocamos el nombre del tema a utilizar, en este ejemplo powerlevel10k Rainbow
1
oh-my-posh --init --shell pwsh --config ~/AppData/Local/Programs/oh-my-posh/themes/powerlevel10k_rainbow.omp.json | Invoke-Expression

PSReadLine

1
Install-Module PSReadLine
  • Editar el archivo de perfil:
1
2
3
4
5
oh-my-posh --init --shell pwsh --config ~/AppData/Local/Programs/oh-my-posh/themes/powerlevel10k_rainbow.omp.json | Invoke-Expression
Import-Module PSReadLine
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -EditMode Windows

Iconos de Terminal

1
Install-Module -Name Terminal-Icons -Repository PSGallery
  • Editar el archivo de perfil:
1
2
3
4
5
6
7
8
oh-my-posh --init --shell pwsh --config ~/AppData/Local/Programs/oh-my-posh/themes/powerlevel10k_rainbow.omp.json | Invoke-Expression
Import-Module PSReadLine
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -EditMode Windows
Import-Module -Name Terminal-Icons
#Get-ChildItem | Format-List
#Get-ChildItem | Format-Wide

WinFetch

1
Install-Script winfetch
  • Editar el archivo de perfil:
1
2
3
4
5
6
7
8
9
oh-my-posh --init --shell pwsh --config ~/AppData/Local/Programs/oh-my-posh/themes/powerlevel10k_rainbow.omp.json | Invoke-Expression
Import-Module PSReadLine
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -EditMode Windows
Import-Module -Name Terminal-Icons
#Get-ChildItem | Format-List
#Get-ChildItem | Format-Wide
winfetch
  • Para personalizar la informacion que se muestra editar adecuadamente el archivo ~\.config\winfetch\config.ps1 

Resultado Final

TerminalTerminal

Personalizar consola de Ubuntu

BASH Shell

  • Verificar actualizaciones con el comando sudo apt update

  • Instalar neofetch muestra informacion del sistema

1
sudo apt install neofetch
  • Instalar git y curl
1
2
sudo apt install git
sudo apt install curl
1
bash -c "$(curl -fsSL https://raw.githubusercontent.com/ohmybash/oh-my-bash/master/tools/install.sh)"
1
sudo apt-get install fonts-powerline
  • editar el archivo .bashrc
1
nano .bashrc
  • Editar linea del tema: OSH_THEME="powerline-multiline"
  • Agregar al final del archivo neofetch

ZSH Shell

  • el comando echo $SHELL muestra la shell que actualmente se esta utilizando
  • Instalar Shel ZSH
1
sudo apt install zsh
  • Cambiar shell con el comando chsh
1
/bin/zsh
1
sh -c "$(wget -O- https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
1
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
1
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
  • Editar archivo .zshrc 
1
nano .zshrc
  • Editar linea en el archivo plugins=(git zsh-autosuggestions zsh-syntax-highlighting) 
  • Instalar font awesome 
1
sudo apt install -y fonts-font-awesome
1
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
  • Editar archivo .zshrc modificar la linea ZSH_THEME="powerlevel10k/powerlevel10k" 
  • Al reiniciar la terminal se nos mostrara la configuracion paso a paso, en caso de no aparecer escribir el comando p10k configure
  • Para agregar NeoFetch agragamos las siguientes lineas al archivo .zshrc
1
2
neofetch
typeset -g POWERLEVEL9K_INSTANT_PROMPT=off

Resultado final:

TerminalTerminal

This post is licensed under CC BY 4.0 by the author.