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'écris un script bash où je veux sortir si l'utilisateur n'est pas root. Le conditionnel fonctionne bien, mais le script ne se ferme pas. [[ `id -u` == 0 ]] || (echo "Must be root to run script"; exit) J'ai essayé d'utiliser &&au lieu de, ;mais ni travail.
Dans le tutoriel bash que je lis, il est dit que si vous ouvrez un descripteur de fichier pour la lecture, c'est-à-dire exec 3< echolist Ensuite, vous devez le fermer comme ça, exec 3<&- Cependant, si vous ouvrez un descripteur de fichier en écriture, vous devez le fermer comme suit: …
J'essaie de lire le résultat d'une commande en bash en utilisant un fichier while loop. while read -r line do echo "$line" done <<< $(find . -type f) La sortie que j'ai eu ranveer@ranveer:~/tmp$ bash test.sh ./test.py ./test1.py ./out1 ./test.sh ./out ./out2 ./hello ranveer@ranveer:~/tmp$ Après cela j'ai essayé $(find . …
Supposons que je veuille exécuter une séquence de quatre commandes que j'ai déjà exécutées. Si le premier est 432 dans l'historique des commandes, je pourrais faire: $ !432; !433; !434; !435 Je suis curieux de savoir s'il existe un moyen plus efficace d'y parvenir.
Parfois , je vois des scripts utilisent toutes ces différentes manières de citer un texte: "...", '...', $'...'et $"...". Pourquoi utilise-t-on tant de types de devis différents? Est-ce qu'ils se comportent différemment ou ont une incidence sur ce que je peux faire à l'intérieur d'eux?
Si j'exécute une séquence de commandes comme: $ ls $ grep abc file.txt puis utilisez la flèche du haut pour obtenir le précédent, le terminal affichera le dernier cmd (qui est le grepici) Mais si je fais quelque chose comme ça: $ ls $ grep abc file.txt où grepest précédé …
Je travaille actuellement sur un script bash qui installe et configure divers programmes sur un système Linux standard (actuellement Ubuntu). Puisqu'il installe des programmes et copie un certain nombre de fichiers dans divers dossiers qui nécessitent des privilèges élevés, j'ai déjà réalisé le standard "J'ai besoin de privilèges élevés". Cependant, …
J'ai une variable qui contient la sortie multiligne d'une commande. Quel est le moyen le plus efficace de lire la sortie ligne par ligne à partir de la variable? Par exemple: jobs="$(jobs)" if [ "$jobs" ]; then # read lines from $jobs fi
Je comprends ce qu'est l' extension du corset , mais je ne sais pas comment l'utiliser au mieux. Quand l'utilisez vous? S'il vous plaît, apprenez-moi quelques exemples pratiques et remarquables si vous avez votre propre astuce.
Considérez le nom de script suivant (légèrement idiot) 'test1.sh': #/bin/bash # sleep 10 & echo sleep pid = $! pkill sleep Quand je le lance, je reçois non seulement le résultat de l'écho, mais aussi le compte rendu par bash de la mort du sommeil sur stderr: $ ./test1.sh sleep …
lors de la spécification ls --directory a*, ne lister que les répertoires commençant para* MAIS il répertorie les fichiers ET les répertoires commençant par a Questions : Où pourrais-je trouver de la documentation à ce sujet, autre que manet infooù je pense avoir bien regardé? cela fonctionne-t-il uniquement dans BASH?
unset array[0]supprime l'élément mais quand même si je echo ${array[0]}reçois une valeur nulle, il y a d'autres façons de le faire, mais si un élément d'un tableau contient des espaces comme ci-dessous array[0]='james young' array[1]='mary' array[2]='randy orton' mais ceux-ci échouent également à faire le travail array=${array[@]:1} #removed the 1st element …
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.