De esta guía a la finalización de Bash , aprendemos que para que Bash realice la finalización automática, uno debe realizar . /etc/etc/bash_completion.d/foobar( observe el espacio después. ) para que la finalización de Bash funcione.
$ /etc/bash_completion.d/ssh
bash: /etc/bash_completion.d/ssh: Permission denied
$ . /etc/bash_completion.d/ssh
$ ls -l /etc/bash_completion.d | grep ssh
-rw-r--r-- 1 root root   297 Jan 28 18:04 ssh
¿Es .un atajo para el sourcecomando? Si no, entonces ¿qué es? Es imposible buscar en Google, man sourceno devuelve nada apropos sourcey info sourcedar tanta información irrelevante que no puedo decir si lo que estoy buscando está ahí. ¿Cómo podría comenzar a RTFM para encontrar la respuesta a esta pregunta yo mismo?

bashpágina del manual, ya que este es un comando integrado, busque la explicación de la fuente, es difícil pasarla por alto..un atajo para el comando de origen?" - es realmente al revés:.es el comando ysourcees el alias de compatibilidad (para compatibilidad concsh). Tenga en cuenta quesourceno existe solo en el shell POSIX estándar de bourne..Respuestas:
Sí .es idéntico a la
sourcefunción.Como siempre, la primera referencia es la
man bashpágina del manual donde puede confirmar su conjetura inicial buscando/ sourcees la primera referencia, pero un poco más adelante encontrará una sección Comandos incorporados de Shell
El hecho de que sea una función incorporada bash es la razón por la que la fuente no viene con su propia página de manual, por lo que falló a propósito.
fuente
man bash, pero lo agregaré a mis técnicas de "probar antes de publicar". Parece que esa página me llevará meses revisar y comprender completamente, ¡me lo pasaré bien!man bash? Estoy seguro de que si tengo un problema con elsshcomando que no me ayudará mucho. Es más la referencia de último recurso.help, como enhelp sourceohelp .Sus respuestas breves:
. absolute_path/mycommandfuente el archivo de comandosmycommandque se encuentra en el directorioabsolute_path/. Para más referencias lea aquísourceson equivalentes.helpabash shellsí mismo. Tendrá una respuesta para los comandos integrados.Algunas palabras más
A menudo, la forma más simple es también la más difícil de alcanzar: no pensamos que podemos preguntar
helpal shell en sí, cuando los comandos se definen internamente.Con
type .ytype sourcepodemos notar que esos son comandos integrados .Una vez que lo sepamos,
helppodemos tener información rápida sobre ellos.El comando
helpsin parámetro del indicador nos da:Mientras tanto
help ., además dehelp sourceobtener la misma ayuda idéntica :"Lo obvio es lo que nunca se ve hasta que alguien lo expresa simplemente". K.Gibran
fuente
Este punto "." significa leer y ejecutar comandos del argumento del nombre de archivo en el contexto actual del shell. Es equivalente a la fuente. Este estilo es de Bourne Shell, y consulte http://ss64.com/bash/source.html
fuente