Cada vez que necesito hacer una pequeña secuencia de comandos bash que implique sentencias if, verificar variables vacías y archivos inexistentes et.c. Me encuentro presionando google por algún manual o guía de bash simple.
A menudo, estos son demasiado largos y complicados para responder rápidamente la pregunta que tengo a la mano.
Entonces, estaba pensando que debe haber algún comando o página de manual que cubra la sintaxis bash básica (para cosas como sentencias if, comprobaciones de variables vacías, archivos inexistentes, etc.) de una manera corta y accesible. Estoy seguro de que no he encontrado el comando (man bash no parece serlo).
¿Dónde puedo encontrar eso?
bash
puedes probarhelp
Respuestas:
man bash
es la referencia canónica de Bash.help help
le brinda ayuda sobre elhelp
Bash incorporado y cómo le brinda mensajes breves de ayuda sobre otros Bash incorporados, comohelp for
..bash_history
. Hay demasiados comandos, diferentes sintaxis de parámetrossed
yawk
ruido de línea y otras cosas para recordarlo todo, por lo que es bueno tener una referencia personal "bien arreglada" con etiquetas para buscar.fuente
help
.help
estaba allí. ¡man bash
No se requiere tanta lectura innecesaria !Como hay muchas cosas de este tipo en línea , aquí hay una sugerencia para usted; Lo uso para todo tipo de cosas.
Crea un directorio
$HOME/notes
. Añadir una subcarpeta,bash
. Si no tiene un$HOME/bin
, cree uno, agréguelo a su ruta utilizando el método que prefiera ( por ejemplo: in~/.bashrc
). Luego ponga un script simple allícmdref.sh
:Enlace simbólico por conveniencia
ln -s ~/bin/cmdref.sh ~/bin/cmdref
; Me gusta hacer esto para que pueda editar lacmdref.sh
fuente y un editor todavía reconocerá el tipo de archivo por el sufijo.Copie y pegue lo que sea en varios archivos
~/notes/bash
, por ejemplo, podría tener un archivoarrays.txt
,loops.txt
etc. Siempre y cuando sea solo para su uso personal, no está violando los derechos de autor.Ahora puede usar eso desde la línea de comandos, por ejemplo:
cmdref bash arrays
y esa hoja de trucos se imprimirá en la consola. Tenga en cuenta que aunque los archivos son.txt
(nuevamente, el uso de sufijos apropiados es útil para editores, navegadores de archivos, etc.) no debe usarloscmdref bash arrays.txt
ya que está adjuntocmdref.sh
(lo único que hace el script es convertir rutas y agregar el sufijo).fuente
vi cmdref
Eso significa que puedo hacer y vim abrirá el "cmdref.sh" y luego puedo editarlo o me falta algo obvio aquí?vi ~/bin/cmdref
, vim realmente no sabe qué tipo de archivo es este, y usará un valor predeterminado para resaltar (creo que es.txt
). Pero si ustedvi ~/bin/cmref.sh
, vim sabe que el archivo es un script de shell y el resaltado tendrá sentido. Pero WRT es un comando que desea escribircmdref
, nocmdref.sh
. Por eso uso el enlace simbólico.vi
es en sí mismo un enlace simbólicovim
, por lo que obtienes resaltado de sintaxis (el "vi" original no tenía tal característica, creo). Y: vim en realidad es lo suficientemente inteligente como para reconocer ese script como un script de shell si el archivo no tiene sufijo, pero el principio se mantiene;) En raras ocasiones tal vez necesito / quiero usar algo menos inteligente..sh
archivo en vim yset filetype=txt
- ¡eek!man bash
cubre todos los aspectos de la sintaxis de bash, por ejemplo, paraif statements
,string is zero
ynon-existent files
simplemente busca (presiona la/
tecla e ingresa lo siguiente) paraCONDITIONAL EXPRESSIONS
.fuente