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.
J'essaie de créer des rapports d'erreur à l'aide d'un piège pour appeler une fonction sur toutes les erreurs: Trap "_func" ERR Est-il possible d'obtenir de quelle ligne le signal ERR a été envoyé? La coquille est bash. Si je le fais, je peux lire et signaler quelle commande a été …
Fermé . Cette question est basée sur l'opinion . Il n'accepte pas actuellement de réponses. Voulez-vous améliorer cette question? Mettez à jour la question afin d'y répondre avec des faits et des citations en modifiant ce message . Fermé il y a 4 ans . J'utilise depuis tcshlongtemps maintenant. Mais …
J'écris un script shell pour Linux, en utilisant Bash, pour traduire n'importe quel fichier vidéo en MP4. Pour cela, j'utilise avconvavec libvorbispour l'audio. Dans mon script, j'ai une question pour l'utilisateur: read -p "- Audio Quality [scale from -2 to 10] ? " if [ -n "$REPLY" ] ; then …
Ce script ne fait pas écho "après": #!/bin/bash -e echo "before" echo "anything" | grep e # it would if I searched for 'y' instead echo "after" exit Il en serait de même si je supprimais l' -eoption sur la ligne shebang, mais je souhaite la conserver pour que mon …
Le guide d'installation pour ack suggère d'installer le script ack à l'aide de cette commande: curl http://beyondgrep.com/ack-2.14-single-file > ~/bin/ack && chmod 0755 !#:3 Je suppose que la !#:3fin est une sorte de référence arrière, mais qu'est-ce que cela signifie? Existe-t-il un équivalent dans zsh? Google n'a pas été utile.
Je testais la vitesse de Bash et Python en exécutant une boucle 1 milliard de fois. $ cat python.py #!/bin/python # python v3.5 i=0; while i<=1000000000: i=i+1; Code Bash: $ cat bash2.sh #!/bin/bash # bash v4.3 i=0 while [[ $i -le 1000000000 ]] do let i++ done En utilisant la …
Parfois, la substitution de processus ne fonctionnera pas comme prévu. Voici un exemple: Contribution: gcc <(echo 'int main(){return 0;}') Sortie: /dev/fd/63: file not recognized: Illegal seek collect2: error: ld returned 1 exit status Contribution: Mais cela fonctionne comme prévu lorsqu'il est utilisé avec une commande différente: grep main <(echo 'int …
J'ai une bashinstance longue (à l'intérieur d'une screensession) qui exécute un ensemble complexe de commandes à l'intérieur d'une boucle (chaque boucle faisant des tuyaux, des redirections, etc.). La longue ligne de commande a été écrite à l'intérieur du terminal - elle ne se trouve dans aucun script. Maintenant, je connais …
Je voudrais lancer quelque chose comme ceci: bash -c "some_program with its arguments" mais pour avoir un bash interactif continuez à courir après la some_programfin. Je suis sûr que ce -cn'est pas un bon moyen de man bashseys: Un shell interactif est un shell démarré sans arguments sans option et …
J'ai une application qui produira une grande quantité de données que je ne souhaite pas stocker sur le disque. L'application génère principalement des données que je ne souhaite pas utiliser, mais un ensemble d'informations utiles qui doivent être divisées en fichiers séparés. Par exemple, étant donné la sortie suivante: JUNK …
J'essaie de faire quelque chose comme ça: case $level in 3) echo "Level Three" 2) echo "Level Two" 1) echo "Level one" ;; esac où si $ level = 3, il produirait Level Three Level Two Level One tandis que si $ level = 1, il ne produirait que Level …
Lorsque j'exécute mes analyses à l'aide du shell bash, je veux souvent enregistrer les commandes que j'ai utilisées qui m'ont donné de bons résultats dans un fichier du même répertoire (mon "LOGBOOK", comme on l'appelle) pour pouvoir vérifier ce que Je l'ai fait pour obtenir ces résultats. Jusqu'à présent, cela …
J'ai besoin d'étendre un modèle glob (comme ../smth*/*, ou /etc/cron*/) dans une liste de fichiers, par programme. Quelle serait la meilleure façon de procéder?
La plupart de mes alias sont de cette forme: alias p='pwd' Je veux alias git commitpour qu'il le fassegit commit -v Mais essayer de créer un alias avec un espace donne une erreur: $ alias 'git commit'='git commit -v' -bash: alias: `git commit': invalid alias name
Considérer echo \ # this is a comment foo Cela donne: $ sh foo.sh # this is a comment foo.sh: line 2: foo: command not found Après quelques recherches sur le web, j'ai trouvé une solution de DigitalRoss sur le site sœur Stack Overflow. On peut donc faire echo `: …
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.