Questions spécifiques au Bourne Again SHell de GNU, par opposition aux autres shells Bourne / POSIX. Pour les questions sur les shells Unix en général, utilisez plutôt la balise / shell.
Il s'agit du code bash qui doit être exécuté. Donc, il remplace d'abord l'utilisateur par openproject et exécute ensuite tout le code: su openproject -c "bash -l" cd ~/openproject git checkout Gemfile.lock git pull bundle install RAILS_ENV="production" bundle exec rake db:migrate RAILS_ENV="production" bundle exec rake db:seed RAILS_ENV="production" bundle exec rake …
J'ai été chargé de créer un script de renforcement automatique du serveur et une chose dont ils ont besoin est un rapport de toutes les sorties de chaque commande exécutée. Je veux stocker le message d'erreur dans une chaîne et l'ajouter dans un fichier texte. Disons que j'ai exécuté cette …
Mon code actuel ressemble à ceci:, ce x=${y:0:40}qui limite la longueur de la chaîne à 40 caractères. En cas de chaîne de moins de 40 caractères, est-il possible de remplir les espaces de fin avec des espaces? Donc, si mon y="very short text" J'aimerais que mon y soit: y = …
Comment puis-je obtenir une tranche de $@dans Bash sans avoir d'abord à copier tous les paramètres de position dans un autre tableau comme celui-ci? argv=( "$@" ) echo "${argv[@]:2}";
Comment lire les mots de passe dans les scripts bash d'une manière comme les outils qui ne le montrent pas sur le terminal? (Changer la police en noir sur noir peut être difficile à copier et coller facilement - ce n'est donc pas une solution)
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 générer d'autres …
Étant donné cet exemple minimal ( echo "LINE 1" ; sleep 1 ; echo "LINE 2" ; ) il sort LINE 1et puis, après une seconde, sort LINE 2, comme prévu . Si nous le canalisons grep LINE ( echo "LINE 1" ; sleep 1 ; echo "LINE 2" ; …
À partir du Guide de script Bash avancé, pour obtenir le dernier argument de ligne de commande: Ou: lastarg=${!#} Il s'agit d'une référence indirecte à la $#variable. Notez que lastarg=${!$#}cela ne fonctionne pas.
Cette: $ echo {{a..c},{1..3}} produit ceci: a b c 1 2 3 C'est bien, mais difficile à expliquer étant donné que $ echo {a..c},{1..3} donne a,1 a,2 a,3 b,1 b,2 b,3 c,1 c,2 c,3 Est-ce documenté quelque part? La référence Bash ne le mentionne pas (même si elle a un …
Veuillez expliquer pourquoi 1 4 5 6 est affiché pour les quatre dernières déclarations d'écho? J'ai frappé cela par accident une fois, mais je suis maintenant curieux de savoir pourquoi ce comportement se produit. Ces déclarations fonctionnent comme prévu (pour moi). $ echo [ 9876543210 ] [ 9876543210 ] $ …
Je regarde le code affiché ci-dessous et il vérifie l'entrée si les arguments de ligne / colonne commencent par soit -rou -c. Que ${1:0:2}signifie dans ce contexte? rowArgName="-r" colArgName="-c" if [ "${1:0:2}" != $rowArgName ] && [ "${1:0:2}" != $colArgName ] then echo $correctCmdMsg >&2 exit 1 fi
Je suis entré par erreur chsh -s /usr/bin au lieu de chsh -s /bin/bash et maintenant je ne peux pas me connecter à un shell racine, comment puis-je démarrer un shell bash en tant que root manuellement?
En bash, disons que vous avez var=a.b.c., puis: $ IFS=. printf "%s\n" $var a.b.c Cependant, une telle utilisation de IFSprend effet lors de la création d'un tableau: $ IFS=. arr=($var) $ printf "%s\n" "${arr[@]}" a b c C'est très pratique, bien sûr, mais où est-ce documenté? Une lecture rapide des …
Je voudrais passer des paramètres à un script bash, style dd. En gros, je veux ./script a=1 b=43 avoir le même effet que a=1 b=43 ./script Je pensais pouvoir y arriver avec: for arg in "$@"; do eval "$arg"; done Quelle est la bonne façon de s’assurer que eval est …
J'essaie de ls certains fichiers avec un modèle dans un répertoire. Je veux seulement scanner le premier niveau non récursif. Mon script: for i in $(ls $INCOMINGDIR/*$BUSSINESSDATE*) do echo $i; done La commande ci-dessus balaye récursivement. Comment peut-il faire uniquement pour analyser le répertoire de premier niveau?
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.