4 conseils utiles sur les commandes mkdir, tar et kill sous Linux

Nous continuons à accomplir une tâche de manière conventionnelle jusqu’à ce que nous sachions qu’elle peut être faite d’une bien meilleure manière. Dans le cadre de notre série Conseils et Astuces Linux, je suis ici avec les quatre astuces ci-dessous qui vont vous aider de nombreuses façons. C’est parti !

4 Linux Useful Tips and Hacks
1. Vous devez créer une arborescence de répertoires longue/complexe similaire à celle donnée ci-dessous. Quelle est la manière la plus efficace d’y parvenir ?

Structure de l’arborescence de répertoires à réaliser comme suggéré ci-dessous.

$ cd /home/$USER/Desktop
$ mkdir tecmint
$ mkdir tecmint/etc
$ mkdir tecmint/lib
$ mkdir tecmint/usr
$ mkdir tecmint/bin
$ mkdir tecmint/tmp
$ mkdir tecmint/opt
$ mkdir tecmint/var
$ mkdir tecmint/etc/x1
$ mkdir tecmint/usr/x2
$ mkdir tecmint/usr/x3
$ mkdir tecmint/tmp/Y1
$ mkdir tecmint/tmp/Y2
$ mkdir tecmint/tmp/Y3
$ mkdir tecmint/tmp/Y3/z

Le scénario ci-dessus peut simplement être réalisé en exécutant la commande en une ligne ci-dessous.

$ mkdir -p /home/$USER/Desktop/tecmint/{etc/x1,lib,usr/{x2,x3},bin,tmp/{Y1,Y2,Y3/z},opt,var}

Pour vérifier, vous pouvez utiliser la commande tree. Si elle n’est pas installée, vous pouvez installer le paquet ‘tree’ avec apt ou yum.

$ tree tecmint
Check Directory Structure

Nous pouvons créer une structure d’arborescence de répertoires de n’importe quelle complexité en utilisant la méthode ci-dessus. Remarquez qu’il ne s’agit que d’une commande normale, mais elle utilise {} pour créer une hiérarchie de répertoires. Cela peut s’avérer très utile s’il est utilisé à partir d’un script shell lorsque nécessaire et en général.

2. Créez un fichier (disons test) sur votre Bureau (/home/$USER/Desktop) et remplissez-le avec le contenu ci-dessous.
ABC
DEF
GHI
JKL
MNO
PQR
STU
VWX
Y
Z

Que ferait un utilisateur normal dans ce scénario ?

a. He will create the file first, preferably using touch command, as:

$ touch /home/$USER/Desktop/test

b. He will use a text editor to open the file, which may be nano, vim, or any other editor.

$ nano /home/$USER/Desktop/test

c. He will then place the above text into this file, save and exit.

Donc, peu importe le temps qu’il/elle prend, il doit effectuer au moins 3 étapes pour exécuter le scénario ci-dessus.

Que fera un utilisateur Linux expérimenté et intelligent ? Il suffira de taper le texte ci-dessous en une seule fois dans le terminal et c’est tout. Il n’aura pas besoin d’effectuer chaque action séparément.

cat << EOF > /home/$USER/Desktop/test
ABC
DEF
GHI
JKL
MNO
PQR
STU
VWX
Y
Z
EOF

Vous pouvez utiliser la commande ‘cat‘ pour vérifier si le fichier et son contenu ont été créés avec succès ou non.

$ cat /home/avi/Desktop/test

3. Nous traitons souvent des archives (notamment des balles TAR) sur Linux. Dans de nombreux cas, nous devons utiliser cette balle TAR dans un emplacement autre que le dossier Téléchargements. Que faisons-nous dans ce scénario?

Nous faisons normalement deux choses dans ce scénario.

a. Copy/Move the tar ball and extract it at destination, as:

$ cp firefox-37.0.2.tar.bz2 /opt/
or
$ mv firefox-37.0.2.tar.bz2 /opt/

b. cd to /opt/ directory.

$ cd /opt/

c. Extract the Tarball.

# tar -jxvf firefox-37.0.2.tar.bz2 

Nous pouvons faire cela dans l’autre sens.

Nous allons extraire la balle TAR là où elle se trouve et copier/déplacer l’archive extraite vers la destination requise comme suit:

$ tar -jxvf firefox-37.0.2.tar.bz2 
$ cp -R firefox/  /opt/
or
$ mv firefox/ /opt/

Dans les deux cas, le travail nécessite deux étapes pour être complet. Le professionnel peut accomplir cette tâche en une seule étape comme suit:

$ tar -jxvf firefox-37.0.2.tar.bz2 -C /opt/

L’option -C permet à tar d’extraire l’archive dans le dossier spécifié (ici /opt/).

Non, il ne s’agit pas d’une option (-C) mais de habitudes. Prenez l’habitude d’utiliser l’option -C avec tar. Cela simplifiera votre vie. Désormais, ne déplacez pas l’archive ou ne copiez/déplacez pas le fichier extrait, laissez simplement la balle TAR dans le dossier Téléchargements et extrayez-la où vous le souhaitez.

4. Comment tuons-nous un processus de manière traditionnelle?

De manière générale, nous listons d’abord tous les processus en utilisant la commande ps -A et nous la passons à grep pour trouver un processus/service (disons apache2), simplement comme suit:

$ ps -A | grep -i apache2
Sortie d’exemple
1006 ?        00:00:00 apache2
 2702 ?        00:00:00 apache2
 2703 ?        00:00:00 apache2
 2704 ?        00:00:00 apache2
 2705 ?        00:00:00 apache2
 2706 ?        00:00:00 apache2
 2707 ?        00:00:00 apache2

La sortie ci-dessus montre tous les processus apache2 actuellement en cours d’exécution avec leurs PID, vous pouvez ensuite utiliser ces PID pour tuer apache2 à l’aide de la commande suivante.

# kill 1006 2702 2703 2704 2705 2706 2707

et vérifiez ensuite si un processus/service portant le nom ‘apache2‘ est en cours d’exécution ou non, comme suit :

$ ps -A | grep -i apache2

Cependant, nous pouvons le faire dans un format plus compréhensible en utilisant des utilitaires tels que pgrep et pkill. Vous pouvez trouver des informations pertinentes sur un processus en utilisant simplement pgrep. Disons que vous devez trouver les informations sur le processus apache2, vous pouvez simplement faire :

$ pgrep apache2
Sortie d’exemple
15396
15400
15401
15402
15403
15404
15405

Vous pouvez également lister le nom du processus par rapport à l’pid en exécutant.

$ pgrep -l apache2
Sortie d’exemple
15396 apache2
15400 apache2
15401 apache2
15402 apache2
15403 apache2
15404 apache2
15405 apache2

Pour tuer un processus en utilisant pkill est très simple. Vous tapez simplement le nom de la ressource à tuer et c’est fait. J’ai écrit un article sur pkill que vous pouvez consulter ici : https://www.tecmint.com/how-to-kill-a-process-in-linux/.

Pour tuer un processus (disons apache2) en utilisant pkill, tout ce que vous avez à faire est :

# pkill apache2

Vous pouvez vérifier si apache2 a été tué ou non en exécutant la commande ci-dessous.

$ pgrep -l apache2

Si elle renvoie l’invite et n’affiche rien, cela signifie qu’il n’y a aucun processus en cours d’exécution portant le nom de apache2.

C’est tout pour le moment, de ma part. Tous les points discutés ci-dessus ne sont pas suffisants mais aideront certainement. Nous ne voulons pas seulement produire des tutoriels pour vous apprendre quelque chose de nouveau à chaque fois, mais nous voulons aussi montrer ‘Comment être plus productif dans le même cadre‘. Donnez-nous vos précieux commentaires dans les commentaires ci-dessous. Restez connecté. Continuez à commenter.

Source:
https://www.tecmint.com/mkdir-tar-and-kill-commands-in-linux/