Maison  >  Article  >  Tutoriel système  >  Trésor intéressant ! 6 utilitaires Linux uniques et étonnants pour vous

Trésor intéressant ! 6 utilitaires Linux uniques et étonnants pour vous

WBOY
WBOYavant
2024-02-13 21:42:16864parcourir

Dans cet article, nous allons approfondir les recoins cachés de /usr/bin et découvrir des trésors encore plus intéressants. Nous explorerons quelques programmes uniques et intéressants qui peuvent sembler obsolètes à première vue, mais qui sont en réalité encore très utiles aujourd'hui.

Reprenons le chemin de l'aventure et continuons à découvrir d'autres choses merveilleuses que Linux a à nous offrir.

1、plier

Tout d’abord, nous disposons d’un petit outil très utile qui peut vous aider à enrouler les lignes de saisie à une longueur spécifique. Vous pouvez définir la longueur en spécifiant le nombre d'octets ou d'espaces. À l'aide de l'outil de pliage, vous pouvez traiter rapidement des fichiers de différentes longueurs.

Par exemple, supposons que nous ayons une ligne de saisie de six caractères. Nous voulons limiter chaque ligne à seulement cinq caractères et envelopper le reste. En utilisant Fold, nous pouvons y parvenir en utilisant :

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ echo "12345678" | fold -w 7

Le résultat correspondant devrait être :

1234567
8
有趣的宝藏!6 个你独特而惊人的 Linux 实用工具

Nous pouvons désormais insérer rapidement du texte dans notre limite de longueur. Ceci est utile pour diviser de longs flux de texte ou pour imposer des limites de longueur de ligne sur le code ou d'autres fichiers de configuration.

Pour plus de détails sur l'utilisation de Fold, consultez la page wiki.

2, colonne

C'est un autre outil de formatage très utile. L'outil Colonne peut vous aider à créer des colonnes dans une sortie texte ou même à générer des tableaux entiers, le tout à partir de la ligne de commande.

Bien que la même fonctionnalité puisse être obtenue en utilisant des outils comme awk, l'outil colonne est conçu dans ce but spécifique, il est donc très simple à utiliser et sa syntaxe est facile à retenir.

Si nous voulons construire un tableau simple basé sur quelques lignes de saisie, nous pouvons exécuter la commande suivante :

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ echo -e "one two three\n1 2 3\n93139 777777 999999" | column -t

Le résultat de la commande devrait ressembler à ceci :

one    two     three
1      2       3
93139  777777  999999
有趣的宝藏!6 个你独特而惊人的 Linux 实用工具

Comme vous pouvez le voir, la sortie est automatiquement formatée en colonnes parfaitement alignées. Cela forme un petit tableau dans la sortie, qui se redimensionne automatiquement en fonction de la longueur de chaque ligne d'entrée.

Si vous travaillez avec un ensemble de données non structurées légèrement plus long sur la ligne de commande et que vous souhaitez créer rapidement des formulaires tabulaires, cet outil vous sera d'une grande aide.

La page de manuel de

column fournit plus de détails d'utilisation et des manières uniques de gérer différentes entrées.

3、sg

Vous avez peut-être entendu parler de la commande newgrp. Cette commande exécute les commandes dans un groupe différent, mais il existe un utilitaire plus simple qui réalise la même fonctionnalité. L'utilitaire sg vous permet d'exécuter directement des commandes avec les autorisations d'un autre groupe que vous spécifiez. Vous n'avez pas besoin d'utiliser des canaux ou de modifier les groupes shell existants, spécifiez simplement un groupe et une commande.

Pour exécuter la commande ls avec les autorisations du groupe sudo, vous pouvez saisir la commande suivante :

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ sg sudo ls
有趣的宝藏!6 个你独特而惊人的 Linux 实用工具

Cela fera basculer la commande ls pour qu'elle s'exécute avec les autorisations du groupe sudo. Une fois l’exécution de la commande terminée, vous reviendrez aux autorisations de groupe normales que vous aviez avant l’exécution.

La commande

sg est très utile pour tester les autorisations de nouveaux groupes ou pour changer rapidement de contexte pour exécuter un programme à partir d'un autre groupe.

4、xxd

L'utilitaire xxd est l'une des nombreuses façons d'effectuer un vidage hexadécimal sous Linux. Il existe de nombreux utilitaires dotés de fonctionnalités similaires, mais le programme xxd est légèrement différent. Il présente l'avantage supplémentaire que vous pouvez utiliser cet utilitaire pour effectuer des sauvegardes et des restaurations hexadécimales. Il existe de nombreux indicateurs configurables et vous pouvez également effectuer des opérations de correctif sur les binaires.

Supposons que nous souhaitions effectuer un dump hexadécimal du fichier suivant nommé Linuxmi :

linuxmi

我们只需提供输入,xxd 将自动将文件编码到 stdout(对于较短的输入文件,这是一个很方便的默认功能):

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ xxd linuxmi
00000000: 6c69 6e75 786d 690a
有趣的宝藏!6 个你独特而惊人的 Linux 实用工具

您还可以通过传递一个额外的文件名参数来直接将输出发送到转储文件:

xxd linuxmi 93139
有趣的宝藏!6 个你独特而惊人的 Linux 实用工具

这将将十六进制转储发送到名为 93139 的文件中。

xxd 的 man 页面可以在此处找到。

5、pwdx

这个方便的小实用程序来自于我们都熟悉和喜爱的古老 ps 实用程序家族。pwdx 实用程序可以让您获取运行中进程的当前工作目录。您只需要将进程的 PID 传递给它,它就会告诉您该进程的工作目录在哪里。

假设我们想找出 cron 进程在我们的机器上的工作目录。首先,我们只需要使用 ps 搜索并找到它的 PID,像这样:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ ps aux | grep cron
有趣的宝藏!6 个你独特而惊人的 Linux 实用工具

在这里,我们可以看到cron的PID是612。现在,我们只需要将该进程的PID传递给pwdx来确定其工作目录,像这样:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]
└─$ sudo pwdx 691

如下图:

有趣的宝藏!6 个你独特而惊人的 Linux 实用工具

由于cron是系统进程,您需要使用sudo才能获取有关它的信息。命令完成后,我们得到了cron的当前工作目录,即 /var/spool/cron。
这可以是一个非常有价值的故障排除工具,特别是当您追踪目录范围问题时。通过使用 pwdx 进行快速检查,您可以准确地确定一个进程认为它应该从哪个位置运行。

在这里查看 pwdx 的 man 页面。

6、write

这个强大的小程序可能不会像您一开始想的那样执行某个特定任务。它在 Linux 中已经存在了几十年,甚至可以追溯到 1975 年 Unix 的第 6版。

write 实用程序实际上允许您向同一系统上的其他用户发送消息。您可以针对任何其他登录的用户发送消息。提供用户名,您将进入一个交互式shell,以向他们写任何您想要的文本。您键入的所有内容(包括换行符)都将出现在目标用户的控制台上。

这里是一个快速示例:

write 

这将使您进入一个交互式控制台,以向相应的用户发送消息。请记住,这是一种相当侵入性的与其他用户通信的方式。这将使他们的终端显示您输入的文本,而无需任何警告或提示。对他们来说,这将出现在他们的终端上,就像自动出现的信息一样。由于这是单向通信,他们也无法回复。

尽管现在有更好的方法来处理用户之间的消息传递,但这是计算历史的一部分。我相信今天仍然可以有一些创造性的用途。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer