Il est possible de créer un fichier en incluant automatiquement la date et l’heure courantes dans son nom à l’aide de la substitution de commande et de la commande date. Nommer des fichiers avec la date courrantePour créer un fichier avec une date de type 2023-11-29-22-13-37 : # touch /MonDossier/monFichier-$(date +%Y-%m-%d-%H-%M-%S).txt DocumentationInternet
La commande find permet de rechercher des répertoires dans une arborescence en limitant la profondeur de parcours afin de restreindre les résultats. Rechercher avec findRechercher des dossiers dans une arboressence en précisant la profondeur : # find / -maxdepth 12 -type d -name "MonRepertoireImportant"/etc/MonRepertoireImportant/usr/MonRepertoireImportant/exports/volume42/licences/usr/MonRepertoireImportant/exports/volume42/usr/MonRepertoireImportant DocumentationMAN find
Si vous avez un fichier avec des informations qui vous interessent sur plusieurs lignes et que vous souhaitez une sortie sur une seule vous pouvez utiliser la commande awk. Commande AWKExemple de fichier : [...]HOST: serv01.my.company.org [Linux]---------- Comment: Backup MasterUse : A B C[...]HOST: serv02.my.company.org [Linux]---------- Comment: Hyper MasterUse : A B C D[...]HOST: serv03.my.company.org [Linux]---------- Comment: Super MasterUse : A C[...] Command
Le protocole SSH permet d’établir une connexion sécurisée sans mot de passe en se basant sur un mécanisme d’authentification par paire de clés publique et privée. Cette méthode renforce la sécurité tout en simplifiant les connexions aux systèmes distants car il est possible d’établir une connexion sans mot de passe en utilisant l’authentification par clé privée/publique. Génération de clésAvec l’emplacement par défaut des clés : $ ssh-keygen // Génération des clés$ ssh-copy-id u
Les liens en dur et les liens symboliques peuvent être identifiés en analysant les numéros d’inode associés aux fichiers. En utilisant la commande ` stat couplée à awk, il est possible de distinguer les fichiers partageant un même inode de ceux disposant d’un inode unique. Detecter les différents liensPour lister tous les liens en dur, la commande awk permet de lister les mêmes inodes en récupérant le champs %i de stat : stat -c '%i %n' * | awk 'Doublon[$1]++' | cut -d '
Le shell Bash permet de réutiliser rapidement des commandes précédemment exécutées à l’aide de l’historique. La fonctionnalité appelée bang bang permet d’exécuter à nouveau une commande sans avoir à la retaper. Il est possible d’exécuter la dernière commande saisie et d’exécuter une commande précise à partir de son numéro dans l’historique. utilisation de Bang BangLa commande bang bang ou !! permet d’exécuter la dernière commande tapée dans le terminal. Il est également possible de préciser un n
Dans Vim, la commande de substitution permet de remplacer un mot ou un motif dans tout le fichier ou seulement sur certaines lignes. Les options g, s et %s donne un contrôle sur l’étendue et le nombre de remplacements. Remplacement de motsPour remplacer plusieurs mots (ou bouts de mots) sous Vim, on utilise g, s et %s : Toutes les occurences : :%s/texte/Nouveau/g Une seule (la 1ère trouvée) : :s/texte/Nouveau/g Exemple : changer le mot corbeau en corbeille sans toucher aux autres mots (comme
Il est possible de terminer l’ensemble des processus appartenant à un utilisateur spécifique à l’aide d’une commande combinant l’affichage des processus, leur filtrage et l’envoi d’un signal d’arrêt. Kill’them all !Commande pour supprimer tous les processus d’un utilisateur en particulier : # ps aux | grep "^usename" | awk '{print $2}' | xargs kill -9 Détails : ps aux : liste tous les processus grep "^usename" : liste uniquement les lignes com
Il est possible d’identifier la ligne la plus fréquente d’un fichier en combinant les commandes sort, uniq et tail pour compter et trier les occurrences. Ligne la plus fréquentePour trouver la ligne la plus fréquentes dans un fichier : # cat file | sort | uniq -c | sort -n | tail -1 DocumentationInternet
Il est possible de modifier les droits puis de supprimer le contenu de répertoires spécifiques en utilisant la commande find, combinée à l’exécution de commandes ciblées sur les résultats trouvés. Trouver et supprimerSi vous voulez changer les droits et supprimer tous les dossiers du répertoire /John qui commencent par “test” et finissent par “.bdr” : # find /home/John/ -type d -name "test*.bdr" -exec sh -c 'chmod u+w {}/* ; rm -f {}/*' \; VérificationEn
La commande printenv peut être utilisée pour répertorier toutes les variables d’environnement sur le système, certaines de ces valeurs changent en fonction de l’utilisateur connecté. Afficher toutes les variablesPour afficher toutes les variables d’environnement : # printenv Exemple de sortie : SHELL=/bin/bashPWD=/rootLOGNAME=alineXDG_SESSION_TYPE=ttyMOTD_SHOWN=pamHOME=/rootLANG=fr_FR.UTF-8LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=0
Lorsqu’il est nécessaire de modifier les permissions de fichiers et de répertoires récursivement dans une arborescence, le commande find, associée à exec ou xargs, permet d’appliquer des droits précis en fonction du résultat trouvé. ManuelDéfinition dans les manuels : xargs — build and execute command lines from standard input exec — execute commands and open, close, or copy file descriptors Changer des droits dans le résultat d’une commandePour changer des droits en fonction d’un répertoire o