Tengo las siguientes líneas en mi archivo de script bash .cfg DDF_SOURCE="siebel_DATA_DATE_FORMAT" DATA_DATE_FORMAT=${!DDF_SOURCE} ¿Cómo se ${!DDF_SOURCEevalúa}? Sería !siebel_DATA_DATE_FORMAT, lo que no tiene sentido para
Tengo las siguientes líneas en mi archivo de script bash .cfg DDF_SOURCE="siebel_DATA_DATE_FORMAT" DATA_DATE_FORMAT=${!DDF_SOURCE} ¿Cómo se ${!DDF_SOURCEevalúa}? Sería !siebel_DATA_DATE_FORMAT, lo que no tiene sentido para
Estoy seguro de que es relativamente simple, simplemente no sé cómo hacerlo. #!/usr/bin/ksh set `iostat` myvar=6 Quiero algo como lo echo ${$myvar}que quiero interpretar como ${$myvar}-> ${6}->value
¿Por qué obtengo valores diferentes para $xlos fragmentos a continuación? #!/bin/bash x=1 echo fred > junk ; while read var ; do x=55 ; done < junk echo x=$x # x=55 .. I'd expect this result x=1 cat junk | while read var ; do x=55 ; done echo x=$x # x=1 .. but why? x=1 echo fred | while...
Recientemente noté lo siguiente en mi perfil de cygwin, más precisamente: /usr/local/bin:/usr/bin${PATH:+:${PATH}} Qué significa eso? ¿Por qué no es solo $ PATH? ¿Es esto un 'si existe $ PATH entonces agregue: $ PATH'? Mi propósito es intercambiar el orden y poner las rutas de Cygwin detrás de la...
Seguimiento a la parte de fondo en esta pregunta . En bashpuedo usar ${!FOO}para doble sustitución, en zsh ${(P)FOO}. En ambos, la vieja escuela (hack-y) eval \$$FOOfunciona. Entonces, lo más inteligente y lógico para mí sería la ${${FOO}}, ${${${FOO}}}…sustitución doble / triple / n. ¿Por qué...
Esta pregunta no se trata de cómo escribir un literal de cadena con escape correcto. No pude encontrar ninguna pregunta relacionada que no se trata de cómo escapar de las variables para el consumo directo dentro de un script o por otros programas. Mi objetivo es habilitar un script para generar...
Tengo una variable para el color. Lo uso para establecer el color en cadenas, evaluándolo dentro de la cadena. Sin embargo, necesito incluir espacio después del nombre (para que el nombre no contenga parte del texto). Esto a veces se ve mal. ¿Cómo puedo evitar usar (imprimir) este...
#!/bin/bash VALUE=10 if [[ VALUE -eq 10 ]] then echo "Yes" fi Para mi sorpresa, esto genera "Sí". Hubiera esperado que fuera necesario [[ $VALUE -eq 10 ]]. He escaneado la CONDITIONAL EXPRESSIONSsección de man bash, pero no encontré nada para explicar este
Tengo una variable llamada descrque puede contener una cadena Blah: -> r1-ae0-2 / [123], -> s7-Gi0-0-1:1-US / Fooetc. Quiero conseguir el -> r1-ae0-2, -> s7-Gi0-0-1:1-USparte de la cadena. Por el momento lo uso descr=$(grep -oP '\->\s*\S+' <<< "$descr"para esto. ¿Hay una...
${!FOO}realiza una doble sustitución en bash, lo que significa que toma el valor (cadena) de FOO y lo usa como un nombre de variable. zshno es compatible con esta función. ¿Hay alguna manera de hacer que esto funcione igual en bashy zsh? Antecedentes: Tengo una lista de variables de entorno,...
Supongamos que he declarado las siguientes variables: $ var='$test' $ test="my string" Si imprimo su contenido, veo lo siguiente: $ echo $var $test $ echo $test my string Me gustaría encontrar una manera de imprimir el contenido del contenido de $var(que es el contenido de $test). Entonces...
Puedo hacer esto, pero requiere hacer una cadena de la variable y luego desreferenciarla. ¿Hay alguna forma de acortarlo a una declaración más simple? #!/bin/bash FRUITS="BANANA APPLE ORANGE" BANANA_COLOUR="Yellow" APPLE_COLOUR="Green or Red" ORANGE_COLOUR="Blue" for fruit in $( echo $FRUITS );...
La variable BUILDNUMBERse establece en el valor 230. Espero que 230_se imprima para el comando, echo $BUILDNUMBER_pero la salida está vacía como se muestra a continuación. # echo $BUILDNUMBER_ # echo
Estoy viendo un script que tiene: if [ "${PS1-}" ]; then Eso -me molesta un poco porque no parece la sintaxis estándar de Posix o Bash. ¿Es esta una sintaxis arcana que ha existido desde siempre, o es un error tipográfico? Cualquier referencia a estándares / documentos sería...
¿Hay alguna herramienta / truco disponible para expandir variables para hacer que el código bash sea más fácil de leer? Por ejemplo, convertiría lo siguiente: DIR=/var/tmp FILE=${DIR}/file SCRIPT_ROOT=/opt/root TOOL=${SCRIPT_ROOT}/tool.sh ${TOOL}
Me gustaría usar la sustitución de variables en una cadena particular a la que accedo mediante un comando. Por ejemplo, si copio algo en mi portapapeles, puedo acceder a él de esta manera. $ xclip -o -selection clipboard Here's a string I just copied. Si lo asigno a una variable, entonces puedo...
Necesito agregar un directorio a PKG_CONFIG_PATH. Normalmente, usaría el estándar export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:$(pyenv prefix)/lib/pkgconfig pero PKG_CONFIG_PATHno se ha configurado previamente en mi sistema. Por lo tanto, la variable comienza con un :carácter, que le dice que busque...
Encontré un script que tiene una función que comprueba si se establece una variable pero no la entiendo muy bien. check_if_variable_is_set() { var_name=$1 if [ -z "${!var_name+x}" ]; then false else true fi } ¿Qué sucede exactamente con esta
Estoy escribiendo un script bash que usa ampliamente wget. Para definir todos los parámetros comunes en un lugar, los almaceno en variables. Aquí hay un fragmento de código: useragent='--user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101
He leído algunas otras preguntas sobre manipulación de cadenas de bash de tuberías, pero parecen ser aplicaciones especializadas. Básicamente, ¿hay alguna manera de hacer lo siguiente más simple? en vez de $ string='hello world'; string2="${string// /_}"; echo "${string2^^}" HELLO_WORLD algo...