Outils pour utilisateurs

Outils du site


php-bash:aide-memoire

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
php-bash:aide-memoire [2020/05/09 11:09]
cyrille [xfce4 : changer fond écran ligne de commande]
php-bash:aide-memoire [2021/08/01 09:11] (Version actuelle)
cyrille [Chercher [dans] les logs]
Ligne 13: Ligne 13:
   * [[https://www.cyberciti.biz/linux-news/linux-kernel-5-0-released-how-to-install/|Compiler un kernel 5]]   * [[https://www.cyberciti.biz/linux-news/linux-kernel-5-0-released-how-to-install/|Compiler un kernel 5]]
   * [[https://www.cyberciti.biz/faq/linux-unix-creating-a-manpage/|Créer ses pages de man]]   * [[https://www.cyberciti.biz/faq/linux-unix-creating-a-manpage/|Créer ses pages de man]]
 +  * [[http://www.pingouin-land.com/howto/Man-Page.html|Structuration d'une page de man]]
 +  * [[http://www.linuxfocus.org/Francais/November2003/article309.shtml|Structuration d'une page de man]]
 +  * [[https://www.cyberciti.biz/faq/redirecting-stderr-to-stdout/|Gestion des redirections]]
  
 ----- -----
Ligne 25: Ligne 28:
   *[[https://www.debian.org/doc/manuals/maint-guide/dother.fr.html | Chapitre 5. Autres fichiers dans le répertoire debian]]   *[[https://www.debian.org/doc/manuals/maint-guide/dother.fr.html | Chapitre 5. Autres fichiers dans le répertoire debian]]
   *[[ https://www.debian.org/doc/manuals/maint-guide/dreq.fr.html#customrules| Chapitre 4. Fichiers nécessaires dans le répertoire debian]]   *[[ https://www.debian.org/doc/manuals/maint-guide/dreq.fr.html#customrules| Chapitre 4. Fichiers nécessaires dans le répertoire debian]]
 +  *[[https://www.cyberciti.biz/faq/linux-unix-creating-a-manpage/|Creer page de man]]
  
    
Ligne 30: Ligne 34:
   *[[https://fr.wikibooks.org/wiki/Programmation_Bash|Programmation BASH]]   *[[https://fr.wikibooks.org/wiki/Programmation_Bash|Programmation BASH]]
   *[[https://bash.cyberciti.biz/guide/Main_Page|Linux Shell Scripting Tutorial (LSST) v2.0 ]]   *[[https://bash.cyberciti.biz/guide/Main_Page|Linux Shell Scripting Tutorial (LSST) v2.0 ]]
 +  *[[http://www.dartmouth.edu/~rc/classes/ksh/index.html|Shell]]
  
 ===== BASH et les chaines de caractères ==== ===== BASH et les chaines de caractères ====
Ligne 212: Ligne 217:
 =====Bash : recursif===== =====Bash : recursif=====
  
-<code bash>#!/bin/sh+<code bash>#!/bin/bash
  
 dossierDeTravail="/home/serveur"; dossierDeTravail="/home/serveur";
Ligne 572: Ligne 577:
 ===== Lister les repo d'apt et les sources.list ===== ===== Lister les repo d'apt et les sources.list =====
 <code bash> find /etc/apt -type f -name '*.list' -exec bash -c 'echo -e "\n$1"; nl -ba "$1"' _ '{}' \;</code> <code bash> find /etc/apt -type f -name '*.list' -exec bash -c 'echo -e "\n$1"; nl -ba "$1"' _ '{}' \;</code>
 +
 +<code bash>grep -v "^#" /etc/apt/sources.list{,.d/*}</code>
  
 <code bash>apt-cache policy | grep http | awk '{print $2 $3}' | sort -u</code> <code bash>apt-cache policy | grep http | awk '{print $2 $3}' | sort -u</code>
Ligne 624: Ligne 631:
  
  
 +===== glances  =====
 +Eviter les soucis de mise en page
 +<code bash>alias 
 +alias glances='glances 2>/dev/null'</code>
  
 +===== Mise à jour cassée ou interrompue =====
 +Nettoyer s'il y a des reliquats d'installation qui coincent
 +<code | download>
 +su - 
 +apt update
 +</code>
  
 +Lancer la réparation
 +<code | download>
 +dpkg --configure -a
 +apt install -f
 +</code>
 +
 +Finir ta mise à jour (éventuellement)
 +<code | download>
 +apt upgrade
 +</code>
 +
 +===== Réparer une clef USB =====
 +
 +
 +Identifier sa clef USB
 +<code | download>
 +$ lsblk
 +</code>
 +ou
 +<code | download>
 +$ blkid
 +</code>
 +On doit voir alors une sortie de ce style "/dev/sdc1"
 +
 +Démonter la clef si elle est montée
 +<code | download>
 +# umount /dev/sdXY
 +</code>
 +
 +Réparer la clef USB
 +<code | download>
 +# fsck /dev/sdXY
 +</code>
 +
 +
 +===== Crontab sans notification mail =====
 +
 +Par défaut, lorsqu'une tâche cron est exécutée, cron envoie des notifications par courrier électronique au compte utilisateur. 
 +
 +Pour désactiver les notifications par e-mail, ajoutez<code>
 +> /dev/null 2>&1
 +</code> à la commande dans la tâche cron. 
 +
 +Cela redirige toute la sortie de la tâche cron vers le périphérique **/dev/null**. 
 +
 +Par exemple, la tâche cron suivante n'envoie pas de notifications par courrier électronique:
 +
 +<code>
 +15 * * * Sun     ${HOME}/bigtask.sh > /dev/null 2>&1
 +</code>
 +
 +Pour reprendre la réception des notifications par e-mail des tâches cron, supprimez simplement **> /dev/null 2>&1** de la commande.
 +
 +
 +
 +===== FLAC TO MP3 =====
 +
 +**Avec ffmpeg**
 +<code>
 +parallel ffmpeg -i {} -qscale:a 0 {.}.mp3 ::: ./*.flac
 +</code>
 +
 +
 +**Avec lame**
 +
 +<code>
 +#!/bin/bash
 +
 +for a in ./*.flac; do
 +  # give output correct extension
 +  OUTF="${a[@]/%flac/mp3}"
 +
 +  # get the tags
 +  ARTIST=$(metaflac "$a" --show-tag=ARTIST | sed s/.*=//g)
 +  TITLE=$(metaflac "$a" --show-tag=TITLE | sed s/.*=//g)
 +  ALBUM=$(metaflac "$a" --show-tag=ALBUM | sed s/.*=//g)
 +  GENRE=$(metaflac "$a" --show-tag=GENRE | sed s/.*=//g)
 +  TRACKNUMBER=$(metaflac "$a" --show-tag=TRACKNUMBER | sed s/.*=//g)
 +  DATE=$(metaflac "$a" --show-tag=DATE | sed s/.*=//g)
 +
 +  # stream flac into the lame encoder
 +  flac -c -d "$a" | lame -V0 --add-id3v2 --pad-id3v2 --ignore-tag-errors \
 +    --ta "$ARTIST" --tt "$TITLE" --tl "$ALBUM"  --tg "${GENRE:-12}" \
 +    --tn "${TRACKNUMBER:-0}" --ty "$DATE" - "$OUTF"
 +done
 +</code>
 +
 +
 +===== WMA TO MP3 =====
 +
 +<code>find . -iname "*.wma" -execdir bash -c 'NAME="{}" && ffmpeg -y -i "$NAME" -ab 192k "${NAME/.wma/.mp3}" && rm "$NAME"' \;</code>
 +
 +===== Redimensionner des images =====
 +
 +<code>
 +for f in *.jpeg ; do convert $f -resize 50% new_$f; done
 +</code>
 +
 +
 +===== Chercher [dans] les logs =====
 +
 +Avec systemd, nous avons obtenu journalctl qui permet facilement un filtrage à grain fin comme celui-ci:
 +
 +<code>
 +sudo journalctl --since "2 days ago"   
 +sudo journalctl --since "2019-03-10" --until "2019-03-11 03:00"
 +sudo journalctl -b # last boot 
 +sudo journalctl -k # kernel messages
 +sudo journalctl -p er # by priority (emerg|alert|crit|err|warning|info|debug)
 +sudo journalctl -u sshd # by unit 
 +sudo journalctl _UID=1000 # by user id
 +</code>
  
php-bash/aide-memoire.1589015357.txt.gz · Dernière modification: 2020/05/09 11:09 de cyrille