Sinopsis
-
Los shells modernos admiten la impresión de la ringlera de comandos para el conmemoración y la corrección de comandos eficientes.
-
La impresión de la ringlera de comandos es más capaz que usar el mecanismo de historia del shell.
-
Conchas como Kornshell, Bash, Zsh y Fish ofrecen impresión de ringlera de comandos; Se recomienda la impresión de estilo emacs.
¿Ha utilizado el terminal de Linux y deseó que hubiera una forma de retornar a los comandos anteriores sin retornar a escribir todo? Las conchas modernas le permiten hacer exactamente eso con la impresión de la ringlera de comandos.
¿Qué es la impresión de la ringlera de comandos?
La impresión de la ringlera de comandos es una forma de recuperar y corregir comandos utilizando comandos de impresión de texto en el shell. Esto es similar a usar comandos en un editor de texto. Conveniente a que los editores de texto se usan comúnmente en el terminal inmediato con el caparazón, muchas conchas modernas proporcionan enlaces secreto similares a los de los principales editores de texto, tanto emacs como VI. Estos se cubrirán más delante en este artículo.
Puede moverse rodeando de la ringlera de comando o recuperar las entradas anteriores de la forma en que se movería rodeando de un archivo de texto en un editor.
¿Por qué usar la impresión de la ringlera de comandos?
La razón principal para usar la impresión de la ringlera de comandos es que es mucho más capaz que usar el mecanismo de historial de shell. Si admisiblemente los comandos de historia de Shell introducidos con el shell BSD C fueron bienvenidos cuando se desarrollaron en la período de 1980, como con muchas construcciones de shell, pueden ser engorrosos para memorar.
Cuando se creó UNIX, el historial de shell era un pergamino de papel, porque los terminales originales eran teleprinters, igualmente conocidos por el teletipo de marca. El mecanismo de historia de la concha inventado para la capa BSD C igualmente fue diseñado para estas terminales, ya que todavía eran comunes a mediados de la período de 1970. Los terminales de video posteriores permitieron editar y borrar personajes, y algunos programadores tuvieron la brillante idea de que debería poder sobrevenir por el historial de su comando y poder editarlo a voluntad.
Relacionado
Historia de la terminal Unix: cómo el video mató a la hado de la impresora
Hemos trayecto un derrochador camino de los teletipos.
Los comandos de la historia del shell son simbólicos e poco intuitivos. Los mecanismos de impresión de la ringlera de comandos dependen de las elaboraciones de teclas que ya sepa, como emacs o VI/VIM.
Además puede saltar rodeando de la ringlera de comando más fácilmente con las capacidades de impresión de la ringlera de comandos de lo que puede normalmente.
Si ve que ha cometido un error antaño en su ringlera de comando, puede saltar al principio para solucionarlo. Si está tratando de memorar un comando que ejecutó, puede ejecutar una búsqueda para encontrarlo. Puede saltar a una entrada susodicho y luego modificarla.
Si desea modificar un comando, puede moverse y cambiar los comandos o nombres de archivo que desea usar, y luego ejecutar el comando.
Piense en usar la impresión de la ringlera de comandos como moviéndose a través de su historial de comando shell como si fuera un archivo de texto.
¿Qué shells ofrece impresión de ringlera de comandos?
Muchas de las conchas modernas disponibles en los sistemas Linux admiten la impresión de la ringlera de comandos. El caparazón que popularizó el concepto fue el Kornshelloriginalmente escrito en la período de 1980 en Bell Labs. Este caparazón, llamado así por su creador David Korn, ofreció la capacidad de los usuarios de ejecutar comandos similares a los utilizados en los editores EMAC y VI. Este patrón se ha utilizado en gran medida hoy en otros proyectiles.
Bash igualmente ha ofrecido la impresión de la ringlera de comandos desde el principio, así como ZSH. Con IntentoEl shell predeterminado más popular en las distribuciones de Linux, la mayoría de las distribuciones de Linux lo ofrecen fuera de la caja. Otros conchas, como pezigualmente ofrecerlo. TCSHque se inspira en el CHELL C, igualmente ofrece características VI y Emacs. Esto significa que asimilar técnicas de impresión de la ringlera de comandos darán sus frutos sin importar el shell que use.
La selección del modo editor de usar generalmente se establece en una variable de entorno o en el comando de configuración del shell.
Impresión de estilo emacs
La forma más obvio de comenzar con la impresión de la ringlera de comandos es usar el modo EMACS, incluso si usa otro editor. Este es igualmente el estilo predeterminado en la mayoría de los shells. La razón es que esto parece más un modo natural, ya que Emacs no distingue entre los modos de comando e inserción de la forma en que VI y VIM lo hacen. A pesar de que mi editor privilegiado es VIM, creo que su conjunto de comandos es más adecuado para editar en ese software, y no funciona tan admisiblemente en el shell. Demostraré la impresión de la ringlera de comandos en ZSH, que es mi caparazón de selección, pero igualmente deberían funcionar en otros proyectiles como Bash.
Para configurar la impresión del estilo Emacs, usará uno de los dos comandos, dependiendo del shell que tenga.
En Bash, escriba:
set -o emacs
O en ZSH:
bindkey -e
En la mayoría de los proyectiles modernos, la impresión de estilo emacs es el valencia predeterminado de todos modos.
Los primeros comandos que debes dominar se mueven de un flanco a otro a través de tu historial de shell. Puede usar las teclas de flecha en dirección a hacia lo alto y en dirección a debajo. Además puede usar Ctrl+P y Ctrl+N para avanzar y retroceder a través de su historial. Puedes memorar estos mnémicamente ya que “P” significa “Mencionado” y “N” representa “Next”.
Use cultura minúsculas, porque los caracteres mayúsculas son significativos en el shell y en cualquier otro oportunidad de Linux.
Además puede usar las teclas de flecha para avanzar y retornar a la ringlera de comando. CTRL+F y CTRL+B avanzar en dirección a delante y en dirección a antes. Una vez más, puedes recordarlos con los mnemónicos “delanteros” para “F” y “en dirección a antes” para “B”. Es mejor probarlos varias veces para desarrollar la memoria muscular, especialmente para las cosas que hace con frecuencia. Usar las teclas de flecha o las combinaciones de cultura CTRL+es una cuestión de estética y comodidad.
Puede ir y venir en su historia, pero lo que es útil es poder agenciárselas. Para agenciárselas en dirección a antes en su historial, presione Ctrl+R. Luego puede comenzar a escribir lo que desea agenciárselas, y los resultados aparecerán en tiempo efectivo que contienen la sujeción de búsqueda. La sujeción de búsqueda se resaltará. Presione Ctrl+R para repetir la búsqueda en dirección a antes. La búsqueda de avance es Ctrl+F y funciona de la misma forma. Cuando llegue a un comando susodicho, puede presionar ENTER para ejecutarlo nuevamente o puede editarlo. Es posible que desee hacer esto si desea usar un comando o nombre de archivo diferente.
Puede eliminar caracteres anteriores usando la tecla Backspace, pero igualmente puede eliminar la futuro presionando Ctrl+D. Para eliminar una palabra, presione meta+d. Para eliminar una ringlera completa, presione Ctrk+K.
Un movimiento que uso mucho es saltar al principio y al final de una ringlera. Para ir al aparición de una ringlera, presione Ctrl+a. Para ir al final, presione Ctrl+E. Estos comandos son efectos cuando me doy cuenta de que quiero cambiar poco en la ringlera en la que estoy trabajando, pero el cursor está más cerca de un extremo de la ringlera.
Además puede moverse por límites de palabras en oportunidad de solo por movimientos individuales del cursor. Puede usar la tecla Meta, que es la tecla ALT o de escape. La tecla Meta modifica los comandos anteriores. Por ejemplo, para avanzar por una palabra, presione Meta+F, y para regresar, presione Meta+B.
Impresión de estilo VI
Puede usar Keybindings de estilo VI en conchas que admiten la impresión de la ringlera de comandos, pero aunque soy un afortunado VIM, sugeriría considerar los comandos de emacs. La razón principal es que, a diferencia de VIM, no hay un indicador visual que se muestra si está en el modo de inserción o comando. Disputa que los comandos de estilo VI no funcionan tan admisiblemente en el shell. Emacs parece más adecuado para la impresión de la ringlera de comandos, y el uso de comandos de estilo emacs como valencia predeterminado parece justificado.
Relacionado
11 consejos VIM que le ahorrarán horas de impresión
Ser un vim pro.
Aún así, si desea usar comandos de estilo VI, puede configurarlos de una de dos maneras:
set -o vi
bindkey -v
En el modo VI, comenzará en “Modo Insertar”, donde escribe los comandos de Shell. Para salir al modo de comando, donde se mueve, presione Escape. Para retroceder, presione h. Para avanzar, presione l. Para moverse en entradas de historia previa, presione h. Para moverse en dirección a debajo, presione j.
Puede avanzar con palabras con la tecla W y retroceder con la tecla E en el modo de entrada.
Puedes agenciárselas en dirección a antes con el? secreto en el modo de comando, y reenviar la búsqueda utilizando la tecla / similar a los comandos de búsqueda en dirección a delante y en dirección a antes.
Para eliminar el texto en modo de comando, coloque el cursor sobre él y presione la tecla D. Para eliminar una palabra, presione DW. Para eliminar una ringlera completa, use “DD” presionando la tecla D dos veces.
Estos comandos son solo una muestra de lo que está apto para la impresión de ringlera de comandos en capas modernas de Linux. Con suficiente habilidad y entrenamiento con los dedos, podrá desaparecer a través de su historial de comandos y retornar a ejecutar y editar comandos a voluntad. Acelerará drásticamente su uso de la terminal de Linux.






