J'ai les lignes suivantes dans mon fichier de script .cfg bash DDF_SOURCE="siebel_DATA_DATE_FORMAT" DATA_DATE_FORMAT=${!DDF_SOURCE} comment ${!DDF_SOURCE} est-il évalué? Ce serait !siebel_DATA_DATE_FORMAT, ce qui n'a pas de sens pour
J'ai les lignes suivantes dans mon fichier de script .cfg bash DDF_SOURCE="siebel_DATA_DATE_FORMAT" DATA_DATE_FORMAT=${!DDF_SOURCE} comment ${!DDF_SOURCE} est-il évalué? Ce serait !siebel_DATA_DATE_FORMAT, ce qui n'a pas de sens pour
Je suis sûr que c'est relativement simple, je ne sais pas comment faire. #!/usr/bin/ksh set `iostat` myvar=6 Je veux quelque chose comme echo ${$myvar}ce que je veux interprété comme ${$myvar}-> ${6}->value
Pourquoi est-ce que j'obtiens des valeurs différentes pour $xles extraits ci-dessous? #!/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 |...
J'ai récemment remarqué ce qui suit dans mon profil cygwin, plus précisément: /usr/local/bin:/usr/bin${PATH:+:${PATH}} Qu'est-ce que ça veut dire? Pourquoi n'est-il pas seulement $ PATH? S'agit-il d'un 'si $ PATH existe alors ajoutez: $ PATH'? Mon but est d'échanger la commande et de mettre les...
Suivi de la partie historique de cette question . En bashje peux utiliser ${!FOO}pour la double substitution, en zsh ${(P)FOO}. Dans les deux, la vieille école (hack-y) eval \$$FOOfonctionne. Donc, la chose la plus intelligente et la plus logique pour moi serait la ${${FOO}},
Cette question n'est pas sur la façon d'écrire un littéral de chaîne correctement échappé. Je n'ai trouvé aucune question connexe qui ne concerne pas comment échapper des variables pour une consommation directe dans un script ou par d'autres programmes. Mon objectif est de permettre à un script de...
J'ai une variable pour la couleur. Je l'utilise pour définir la couleur des chaînes, en l'évaluant à l'intérieur de la chaîne. Cependant, je dois inclure un espace après le nom (pour que le nom ne contienne pas de partie du texte). Cela a parfois l'air mauvais. Comment éviter d'utiliser (imprimer)...
#!/bin/bash VALUE=10 if [[ VALUE -eq 10 ]] then echo "Yes" fi À ma grande surprise, cela donne "Oui". Je me serais attendu à ce que cela demande [[ $VALUE -eq 10 ]]. J'ai scanné la CONDITIONAL EXPRESSIONSsection de man bash, mais je n'ai rien trouvé pour expliquer ce
J'ai une variable nommée descrqui peut contenir une chaîne Blah: -> r1-ae0-2 / [123], -> s7-Gi0-0-1:1-US / Fooetc. Je veux obtenir la -> r1-ae0-2, -> s7-Gi0-0-1:1-USpartie de la chaîne. En ce moment j'utilise descr=$(grep -oP '\->\s*\S+' <<< "$descr"pour ça. Y a-t-il une...
${!FOO}effectue une double substitution dans bash, ce qui signifie qu'il prend la valeur (chaîne) de FOO et l'utilise comme nom de variable. zshne prend pas en charge cette fonctionnalité. Existe-t-il un moyen de faire en sorte que cela fonctionne de la même manière dans bashet zsh? Contexte: J'ai...
Supposons que j'ai déclaré les variables suivantes: $ var='$test' $ test="my string" Si j'imprime leur contenu, je vois ce qui suit: $ echo $var $test $ echo $test my string Je voudrais trouver un moyen d'imprimer le contenu du contenu de $var(qui est le contenu de $test). J'ai donc essayé de faire...
Je peux le faire, mais cela nécessite de faire une chaîne de la variable puis de la déréférencer. Existe-t-il un moyen de le raccourcir en une déclaration plus simple? #!/bin/bash FRUITS="BANANA APPLE ORANGE" BANANA_COLOUR="Yellow" APPLE_COLOUR="Green or Red" ORANGE_COLOUR="Blue" for fruit in $(...
La variable BUILDNUMBERest définie sur la valeur 230. Je m'attends 230_à être imprimé pour la commande echo $BUILDNUMBER_mais la sortie est vide comme indiqué ci-dessous. # echo $BUILDNUMBER_ # echo $BUILDNUMBER 230
Je regarde un script qui a: if [ "${PS1-}" ]; then Cela -me dérange un peu parce qu'il ne semble pas avoir la syntaxe standard Posix ou Bash. Est-ce une syntaxe mystérieuse qui existe depuis toujours, ou est-ce une faute de frappe? Toute référence à des normes / documents serait appréciée....
Existe-t-il des outils / astuces pour développer des variables afin de rendre le code bash plus facile à lire? Par exemple, il convertirait les éléments suivants: DIR=/var/tmp FILE=${DIR}/file SCRIPT_ROOT=/opt/root TOOL=${SCRIPT_ROOT}/tool.sh ${TOOL} ${FILE} à: DIR=/var/tmp FILE=/var/tmp/file...
Je voudrais utiliser la substitution de variable sur une chaîne particulière à laquelle j'accède via une commande. Par exemple, si je copie quelque chose dans mon presse-papiers, je peux y accéder comme ceci. $ xclip -o -selection clipboard Here's a string I just copied. Si je l'assigne à une...
J'ai besoin d'ajouter un répertoire à PKG_CONFIG_PATH. Normalement, j'utiliserais la norme export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:$(pyenv prefix)/lib/pkgconfig mais PKG_CONFIG_PATHn'a pas été précédemment configuré sur mon système. Par conséquent, la variable commence par un :caractère, qui lui...
J'ai trouvé un script qui a une fonction qui vérifie si une variable est définie mais je ne la comprends pas très bien. check_if_variable_is_set() { var_name=$1 if [ -z "${!var_name+x}" ]; then false else true fi } Que se passe-t-il exactement avec cette
J'écris un script bash qui utilise largement wget. Pour définir tous les paramètres communs en un seul endroit, je les stocke sur des variables. Voici un morceau de code: useragent='--user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0"'
J'ai lu d'autres questions sur la manipulation de chaînes bash de piping mais elles semblent être des applications spécialisées. Essentiellement, existe-t-il un moyen de faire le plus simple ci-dessous? au lieu de $ string='hello world'; string2="${string// /_}"; echo "${string2^^}" HELLO_WORLD...