(aprendiendo bash) Estaba tratando de verificar la versión de bash, así que escribí /bin/bash -v.
Eso generó una gran cantidad de texto en la pantalla (el contenido de .bashrc y otros archivos provenientes de él).
¿Podría haber arruinado algo (como sobrescribir algunos archivos de configuración / establecer variables de entorno incorrectas, etc.) debido a ese comando?
Tampoco puedo encontrar documentación sobre para qué -vsirve el interruptor.
command-line
bash
Zabba
fuente
fuente

bash -v, invocó un nuevo shell bash con el modo detallado activado, por lo que verá una salida detallada para más comandos (como mínimo veráprintf "\033]0;%s@%s:%s\007" "${USER}" "${HOSTNAME%%.*}" "${PWD/#$HOME/~}"). Para finalizar la verbosidad, escribaexitcommand: volverá al shell de bash no detallado (o al shell en el que se encontraba).Respuestas:
El
-vparámetro para bash significa detallado y le indica a bash que imprima tanta información como sea posible sobre lo que está haciendo. Al inicio, imprimirá toda la configuración en la que está leyendo.Para imprimir la información de versión para bash, use
bash --version.fuente
echo "$BASH_VERSION". También hay una matriz especial (BASH_VERSINFO) que contiene cada número de versión en elementos separados.if ((BASH_VERSINFO[0] < 4)); then echo "Sorry, you need at least bash-4.0 to run this script." >&2; exit 1; fi[ "${BASH_VERSINFO}" -lt 4 ]o[ "${BASH_VERSINFO[0]}" -lt 4 ]Al ejecutar bash (por ejemplo, desde
gnome-terminal) puede verificar el valor deBASH_VERSIONla variable de entorno.Si el valor está vacío, no está ejecutando
bash.fuente
bash --version, porque confirma que actualmente está ejecutando bash, no solo que tiene instalado bash en su sistema.bash --versionno muestra el bash que estás usando actualmente.BASH_VERSIONno asegura que está ejecutandobash:export BASH_VERSION; csh -c 'echo $BASH_VERSION $SHELL $shell', por lo que$BASH_VERSIONse puede establecer encshasí$SHELL --version, pero nuevamente SHELL podría sobrescribirse (y todos los shell no admiten el indicador --version).Hay un atajo de teclado que indica la información actual del shell para que aparezca:
Ctrl+ x Ctrl+v
De
man bashEsta es la mejor opción si ha tenido problemas con las variables de entorno.
fuente
No, todo está bien. De
man bash:Simplemente no es tan silencioso como de costumbre. Tratar
en lugar.
fuente
Lo habitual
--versionpuede darle demasiado repetitivo de varias líneas, así que lo que estoy usando esfuente
bashshell. Una forma en que esto es útil es que no necesita el shell que se usa actualmentebash. Otra es que, incluso enbash, es posible (aunque no es bueno ) establecerBASH_VERSIONun valor diferente. Incluso se puede exportar como una variable de entorno. Sin embargo, incluso después de la ejecuciónexport BASH_VERSION=foobar, el método proporcionado aquí funciona, ya que el nuevobashshell se restableceBASH_VERSIONautomáticamente antes de realizar la expansión de parámetros que lo lee.bash --versiondice4.3.48(1)-releaseyapt-cache policy bashdice4.3-14ubuntu1.2y he comprobado que elbasharchivo ejecutable proviene del paquete 'bash'. ¿Cómo se debe interpretar esto? Hay una falta de coincidencia similar parausb-creator-gtk, y en ese caso la salida de apt-cache es correcta. - ¿Podemos concluir que el número de versión superior es el correcto (y alguien olvidó actualizar el otro)?4.3.48...es la versión de Bash,4.3-14...es la versión delbashpaquete.Para obtener solo la versión y no el texto multilínea:
fuente