Articles of bash

Comment grep un fichier puis l’imprimer? Unix

while true do if($update) then who | awk {‘print$1’} > first_user_list #store original user list update=false fi who | awk {‘print$1′} > updated_user_list (diff first_user_list updated_user_list) | cut -c 3- > in_out_list inOutVar=’cat in_out_list’ #<—-here's my problem length_first=$(wc -l < updated_user_list) length_update=$(wc -l < first_user_list) if [[ "$length_first" -lt "$length_update" ]]; then echo -e "$inOutVar" […]

Utiliser sed avec deux formats de saisie possibles

Je veux parsingr le repository de github, qui se présente sous deux formats: pour ssh: Fetch URL: [email protected]:the/partIWant.git pour https: Fetch URL: https://github.com/the/partIWant.git La commande que j’utilise pour ssh est la suivante: echo “Fetch URL: [email protected]:the/partIWant.git” | sed ‘s/.*://;s/.git$//’ et pour https: echo “Fetch URL: https://github.com/the/partIWant.git” | sed ‘s/.*https:\/\/github.com//;s/.git$//’ Comment puis-je combiner les deux pour […]

Supprimer des éléments par nom d’un document HTML du shell – La commande Sed échoue

J’essaie de supprimer le CSS incorporé d’un fichier HTML sur le serveur Linux (Red Hat 6.8). Par exemple, le fichier 1.htm est comme ci-dessous: abc whatever 1 2 3 def Et ce dont j’ai besoin est abc def J’ai essayé la commande sed ci-dessous sed -i ‘s#(.|\n)*##g’ 1.htm mais ça ne marche pas. Quelqu’un pourrait-il […]

Fonctions de tuyauterie avec d’autres commandes dans Linux

Je voudrais créer une fonction avec des commandes normales sous Linux. Veuillez noter que toutes ces commandes sont placées dans un script .sh (j’utilise le shell Bash). Par exemple, j’ai avec moi une commande comme suit: git diff –name-only HEAD~1..HEAD -z | xargs -0 dirname | catch_exceptions >> extracted_dir_names J’ai écrit catch_exceptions tant que fonction […]

Ajout de MALLET au chemin Bash

J’ai rencontré un problème en ajoutant l’outil de modélisation de sujet MALLET à mon chemin. Si je cd pour /mallet-2.0-8/ et tapez ./bin/mallet , tout fonctionne bien. Si je tape echo $PATH , j’ai ajouté avec succès ‘/mallet-2.0.8/bin’ au chemin. Mais taper mallet maintenant à l’invite produit -bash: mallet: command not found . Alors, comment […]

bash – Erreur avec l’argument getopts dans le script de tracé d’histogramme

Donc, c’est mon code jusqu’ici (im new to bash donc je sais que ça pourrait être compliqué): #!/bin/bash while getopts “:cs:p:” opt; do case $opt in c)COUNT=”hello”;; s)NUM=$OPTARG;; p)CHAR=”$OPTARG”;; \?) exit 1;; esac done shift $((OPTIND – 1)) while read number value; do printf “%3d ” $number if [ ! -z $COUNT ]; then printf […]

Le script Unix ne peut pas modifier le fichier de configuration postgres hba.conf sur Ubuntu

J’essaie de configurer postgres 9.6 sur ubuntu / vagrant via un script de provisioning. Une partie de mon script ajoute une ligne à pg_hba.conf avec la commande suivante: sudo -u postgres echo “host all all all md5” >> /etc/postgresql/9.6/main/pg_hba.conf Cependant, cela me donne l’erreur -bash: /etc/postgresql/9.6/main/pg_hba.conf: Permission denied Ce qui est étrange car je suis […]

plus (+) signe une expression de correspondance de caractère spécial de sed

Si la chaîne contient plusieurs signes (+) et si elle doit être capturée, comment peut-on la placer à l’intérieur de []? comp_arg=`echo $element | sed -nr ‘s/.*-c([a-zA-Z0-9_-+]*).*/\1/p’`; Le problème est que + inside [] ne fonctionne pas et signale les erreurs comme suit: sed: -e expression # 1, caractère 38: fin de la plage invalide

comment créer correctement une instruction de casse pour mapper un alias à une valeur

J’essaie de comprendre comment créer cette déclaration de case . Ce que j’essaie de faire est de mapper mon paramètre d’entrée $1 qui doit être l’une des 3 options, puis mapper le nom d’hôte. Ma commande échoue. Comment atsortingbuer une valeur à ma variable? Quelle est la meilleure façon de procéder? Exécuter: ./test.sh cluster1 Exemple: […]

Comportement inattendu de ‘grep’

Quelqu’un peut-il s’il vous plaît expliquer le comportement de grep pour le cas ci-dessous: $ grep foo $ bash: html: No such file or directory