Articles of bash

Comment diviser une chaîne en shell et obtenir le dernier champ

Supposons que j’ai la chaîne 1:2:3:4:5 et que je veuille obtenir son dernier champ ( 5 dans ce cas). Comment puis-je le faire en utilisant Bash? J’ai essayé de cut , mais je ne sais pas comment spécifier le dernier champ avec -f .

Comment simuler l’environnement avec lequel cron exécute un script?

J’ai normalement plusieurs problèmes avec la façon dont cron exécute les scripts car ils n’ont normalement pas la configuration de mon environnement. Existe-t-il un moyen d’invoquer bash (?) De la même manière que cron afin de pouvoir tester les scripts avant de les installer?

les conditions bash: comment «et» les expressions? (si )

Je suppose que je ne sais pas comment faire “et” les tests. Je voulais m’assurer qu’il existait un argument qui fonctionnait bien avec [ -e $VAR ] mais qui se révélait également être vrai sur une chaîne vide; ce que je ne veux pas. Comment puis-je les ‘et’ ensemble? Ou existe-t-il un autre test unaire […]

Comment vérifier s’il est exécuté sous Cygwin, Mac ou Linux?

J’ai un script shell qui est utilisé à la fois sur Windows / Cygwin et Mac et Linux. Il nécessite des variables légèrement différentes pour chaque version. Comment un script shell / bash peut-il détecter s’il est exécuté dans Cygwin, sur un Mac ou sous Linux?

Appel de plusieurs commandes via xargs

cat a.txt | xargs -I % echo % Dans l’exemple ci-dessus, xargs prend echo % comme argument de commande. Mais dans certains cas, j’ai besoin de plusieurs commandes pour les traiter, par exemple: cat a.txt | xargs -I % {command1; command2; … } Mais xargs n’accepte pas ce formulaire. Une solution que je connais est […]

Comment savoir si une variable est vide ou non dans Bash

Comment puis-je vérifier si une variable est vide dans Bash?

Comment faire “si pas vrai état”?

Je voudrais que la commande echo exécutée quand cat /etc/passwd | grep “sysa” cat /etc/passwd | grep “sysa” n’est pas vrai. Qu’est-ce que je fais mal? if ! [ $(cat /etc/passwd | grep “sysa”) ]; then echo “ERROR – The user sysa could not be looked up” exit 2 fi

Accéder à la ligne de commande bash args $ @ vs $ *

Dans de nombreuses questions et didacticiels SO, je vois que je peux accéder aux arguments de la ligne de commande dans les scripts bash de deux manières: $ ~ >cat testargs.sh #!/bin/bash echo “you passed me” $* echo “you passed me” $@ Qui aboutit à: $ ~> bash testargs.sh arg1 arg2 you passed me arg1 […]

Avec Bash Scripting, comment puis-je supprimer toutes les sorties d’une commande?

J’ai un script bash qui exécute un programme avec des parameters. Ce programme affiche un statut (en faisant cela, en faisant cela …). Il n’y a pas d’option pour que ce programme soit silencieux. Comment puis-je empêcher le script d’afficher quoi que ce soit? Je cherche quelque chose comme windows “echo off”.

Vérification efficace du statut de sortie de Bash de plusieurs commandes

Y a-t-il quelque chose de similaire à pipefail pour les commandes multiples, comme une instruction ‘try’ mais dans bash. Je voudrais faire quelque chose comme ça: echo “trying stuff” try { command1 command2 command3 } Et à tout moment, si une commande échoue, supprimez-la et répétez l’erreur de cette commande. Je ne veux pas avoir […]