Comment analyser la sortie JSON sur le shell? Par exemple, Amazon Web Services fournit une CLI pour récupérer l'état de vos instances: $ aws ec2 describe-instances <my_instance_id> Mais la commande renvoie une chaîne JSON. La sortie de cette commande ressemble à ceci: $ aws ec2 describe-instances x12345 { "Reservations" : …
Je sais que je peux le faire dans Bash: wc -l <<< "${string_variable}" Fondamentalement, tout ce que j'ai trouvé impliquait un <<<opérateur Bash. Mais dans le shell POSIX, <<<n'est pas défini, et je n'ai pas pu trouver une approche alternative pendant des heures. Je suis sûr qu'il existe une solution …
J'ai besoin d'identifier la position d'un caractère dans la chaîne à l'aide de la commande grep. Exemple, la chaîne est RAMSITALSKHMAN|1223333. grep -n '[^a-zA-Z0-9\$\~\%\#\^]' Comment trouver la position de |dans la chaîne donnée?
J'ai un tas de fichiers et je veux trouver celui qui contient des lignes séquentielles commençant par une certaine chaîne. Par exemple pour le fichier suivant: Aaaaaaaaaaaa Baaaaaaaaaaa Cxxxxxxxxx Cyyyyyyyyy Czzzzzzzzz Abbbbbbbbbbb Bbbbbbbbbbbb Caaaaaa Accccccccccc Bccccccccccc Cdddddd Ceeeeee Il y a plus d'une ligne commençant par «C», donc je veux …
Je veux agir sur une liste de sous-répertoires dans un répertoire. Considérer: for x in x86-headers/*/C/populate.sh; do echo $x; done Cela donne x86-headers/elf/C/populate.sh x86-headers/gl/C/populate.sh x86-headers/gmp/C/populate.sh x86-headers/gnome2/C/populate.sh x86-headers/gtk2/C/populate.sh x86-headers/jni/C/populate.sh x86-headers/libc/C/populate.sh Mais je veux des valeurs qui correspond à la seconde partie du chemin, elf, gl, etc. Je sais comment Supprimer le …
Existe-t-il une ligne de commande simple pour extraire la dernière partie d'une chaîne séparée par des tirets? Par exemple, je veux extraire 123de foo-bar-123.
Je travaille sur un script et j'ai besoin de construire la tarcommande dynamiquement. Voici deux exemples pour illustrer ce que j'essaie de faire: #!/bin/bash TAR_ME="/tmp" EXCLUDE=("/tmp/hello hello" "/tmp/systemd*" "/tmp/Temp*") _tar="tar "`printf -- '--exclude="%s" ' "${EXCLUDE[@]}"`" -zcf tmp.tar.gz" echo COMMAND: "${_tar}" ${_tar} "$TAR_ME" echo -e "\n\nNEXT:\n\n" EXCLUDE=("--exclude=/tmp/hello\ hello" "--exclude=/tmp/systemd*" "--exclude=/tmp/Temp*") _tar="tar …
Mon dashscript prend un paramètre sous la forme de hostname:port: myhost:1234 Alors que le port est facultatif, c'est-à-dire: myhost J'ai besoin de lire l'hôte et le port dans des variables distinctes. Dans le premier cas, je peux faire: HOST=${1%%:*} PORT=${1##*:} Mais cela ne fonctionne pas dans le deuxième cas, lorsque …
Je recherche une ligne élégante (par exemple, awk) qui raccourcira une chaîne d'un chemin Unix en utilisant le premier caractère de chaque niveau parent / intermédiaire, mais le nom de base complet. Plus facile à montrer par des exemples: /path/to/file → /p/t/file /tmp → /tmp /foo/bar/.config/wizard_magic → /f/b/./wizard_magic /foo/bar/.config/wizard_magic→ /f/b/.c/wizard_magic …
J'ai une chaîne qui est le résultat d'une opération sur laquelle je n'ai aucun contrôle. Lorsque j'imprime cette variable à l'aide echo, j'obtiens: echo $myvar hello Cependant, quand je fais if [ $myvar = "hello" ]; then echo they are equal else echo they are not equal fi J'ai toujours …
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 quelque chose comme $ echo 'hello world' | $"{-// /_}" …
Je veux me scinder 'hello'dans h e l l oun tableau en utilisant uniquement bash, je pourrais le faire dans sed avec sed 's/./& /g'mais je veux savoir comment diviser une chaîne en un tableau dans Bash quand je ne sais pas ce que serait le délimiteur, ou le délimiteur …
Je cherche à faire une recherche et un remplacement dans un vidage de base de données géant, et il ne fait pas ce que je pense devrait se produire. Je voudrais grep pour ma chaîne cible dans le fichier, puis voir les 8 caractères environnants environ (je pourrais avoir besoin …
Je sais que certains obus acceptent ce genre de test: t() { [[ $var == *$'\n'* ]] && res=yes || res=no printf '%s ' "$res"; } var='ab cd' t var='abcd' t echo à l'exécution: $ bash ./script yes no Quel est l'équivalent de travail POSIX (tiret) Est-ce que ce qui …
J'ai une ligne d'un fichier comme celui-ci: attempting to create a 512^3 level (with Dirichlet BC) using a 16^3 grid of 32^3 boxes and 800 tasks... Je veux extraire le 512^3, 16^3, 32^3et 800quatre numéros et de les attribuer respectivement à quatre variables level, grid, boxeset taskspour une autre utilisation. …
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.