13 liens privés
BASH, MariaDB : Lister les tables d'une base et compter leurs enregistrements · Documentation - Wiki
Comment passer des requêtes SQL en bash.
La commande join rejoint les lignes de deux fichiers partageant un champ commun de données.
Au moment de lancer la commande :
ssh adrien@192.168.21.106
Le terminal me répond :
Unable to negotiate with 192.168.21.106 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss
L'astuce pour se connecter est d'ajouter un algorithme via l'option HostKeyAlgorithms
ssh adrien@192.168.21.106 -oHostKeyAlgorithms=+ssh-rsa
La connexion est alors possible
Usage :
sort [OPTION]... [FILE]... sort [OPTION]... --files0-from=F
Options utiles :
-b, --ignore-leading-blanks
-d, --dictionary-order
--> consider only blanks and alphanumeric characters-f, --ignore-case
--> fold lower case to upper case characters-g, --general-numeric-sort
--> compare according to general numerical value-i, --ignore-nonprinting
--> consider only printable characters-M, --month-sort
--> compare (unknown) < 'JAN' < ... < 'DEC'-h, --human-numeric-sort
--> compare human readable numbers (e.g., 2K 1G)-n, --numeric-sort
--> compare according to string numerical value-r, --reverse
--> reverse the result of comparisons--sort=WORD
--> sort according to WORD: general-numeric -g, human-numeric -h, month -M, numeric -n, random -R, version -V-c, --check, --check=diagnose-first
--> check for sorted input; do not sort-u, --unique
--> with-c
, check for strict ordering; without-c
, output only the first of an equal run
Usage
uniq [OPTION]... [INPUT [OUTPUT]]
Options utiles :
-c, --count
compte le nombre de chaque occurrence-d, --repeated
affiche uniquement les lignes apparaissant plusieurs fois-i, --ignore-case
insensible à la casse-u, --unique
affiche uniquement les lignes n'apparaissant qu'une seul fois
grep --text -o -P "DEBUT EXPORT INE +\d{2}/\d{2}/\d{4}\-\d{2}h\d{2}|\d+(\/\d+){5}" trt_exportIne.log | awk '{if (/^DEBUT/) {printf "\n"$0";"} else {printf $0}}'
grep recherche 2 motifs :
DEBUT EXPORT INE \d{2}/\d{2}/\d{4}\-\d{2}h\d{2}
\d+(\/\d+){5}
awk traite ensuite le résultat :if (/^DEBUT/) {printf "\n"$0";"}
recherche le motif déterminant le passage à la ligneelse {printf $0}
par défaut, affiche tout le reste sur une même ligne
Usage de la commande :
grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] -e PATTERN ... [FILE...]
grep [OPTIONS] -f FILE ... [FILE...]
Options utiles :
-
Forcer l'usage du fichier de recherche en mode texte -->
-a, --text
quand grep veut le reconnaître comme un binaire. -
Fichier motif -->
-f fichier_motif
ou--file=fichier_motif
-
Utilisation de modèles et regex
-e _PATTERN_
peut être utilisé plusieurs fois dans la commande
-E _REGEX_
peut être utilisé plusieurs fois dans la commande ?
-P _PERL REGEX_
-
Afficher plusieurs lignes avant/après correspondance :
-Bnnn, -B nnn, --after-context=nnn
--> nnn lignes avant la correspondance
-Annn, -A nnn, --before-context=nnn
--> nnn lignes après la correspondance
-nnn, -C nnn, --context=nnn
--> nnn lignes avant et après la correspondance -
Arrête après avoir trouvé nnn corespondances :
-m nnn
---max-count=nnn
-
Sensibilité à la casse -->
-i, --ignore-case
-
Renvoyer les lignes non correspondantes -->
-v, --invert-match
-
Compter le nombre de lignes correspondantes -->
-c, --count
-
Renvoyer les nom des fichiers qui correspondent ou non au motif :
-L, --files-without-match
-l, --files-with-matches
-
Afficher le nom du fichier -->
-H, --with-filename
-
Ne pas afficher le nom du fichier -->
-h, --no-filename
-
Afficher le numéro de la ligne trouvée -->
-n, --line-number
-
Exclure des fichiers -->
--exclude-from=FILE
-
Mode récursif -->
-r, --recursive
-
Afficher uniquement la partie reconnue de la ligne -->
-o, --only-matching
ex. : grep -Hlir motif
--> affiche le nom du fichier, le numéro de la ligne est insensible à la casse et balaye tous les fichiers du répertoire et des sous-répertoires pour trouver le motif.
- Colorer le résultat ->
--color=always
XmlStarlet est un outil permettant de nombreuses actions sur les fichiers xml.
La commande
xml ed -u "/xml/table/rec[@id=1]/numField" -v 0 xml/tab-obj.xml
... permet de modifier la valeur de l'élément numField de 1 à 0.
for i in *.tar.gz ; do tar xzf $i ; done
Commande bash permettant de trouver les fichiers créés entre 2 dates :
find . -type f -newermt 2022-02-07 ! -newermt 2022-02-09
Trouver les fichiers créés à partir d'une date donnée
find . -type f -newermt 2022-02-07
Comment lire proprement les options de la ligne de commande dans un script bash avec getopts.