Maison  >  Article  >  Opération et maintenance  >  Trésor intéressant ! Six utilitaires Linux uniques et étonnants

Trésor intéressant ! Six utilitaires Linux uniques et étonnants

PHPz
PHPzavant
2023-06-15 12:59:46996parcourir

Nous allons explorer /usr/bin en profondeur et découvrir des trésors encore plus intéressants. Même s'ils peuvent sembler un peu datés, nous explorerons quelques programmes uniques et intéressants qui sont 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,fold

Nous avons un petit outil très pratique qui peut vous aider à envelopper les lignes de saisie en fonction de la longueur spécifiée. 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 la commande suivante :

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

La sortie correspondante devrait être :

12345678

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

Maintenant, nous peut rapidement conformer certains textes à notre limite de longueur. Ceci est utile pour diviser de longs flux de texte ou pour imposer des limites de longueur de ligne au code ou à d'autres fichiers de configuration.

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

2, colonne

C'est un autre outil de formatage très utile. Vous pouvez utiliser l'outil Colonne via la ligne de commande pour créer des colonnes ou même générer des tableaux entiers pour faciliter la sortie de texte.

Bien que la même fonctionnalité puisse être obtenue en utilisant des outils tels que 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 d'entrée, 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

La sortie de la commande devrait ressembler à ceci :

onetwo three12 393139777777999999
# 🎜🎜#

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

Comme vous pouvez le voir, la sortie est automatiquement formatée en colonnes parfaitement alignées. Un petit tableau est formé dans la sortie, redimensionné 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. Il existe un outil plus simple qui produit le même effet sans que vous ayez à exécuter des commandes en tant que groupe différent. L'utilitaire sg vous permet d'exécuter directement des commandes avec les autorisations d'un autre groupe que vous spécifiez. Spécifiez simplement un groupe et une commande sans avoir à utiliser de canaux ou à modifier les groupes shell existants.

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

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

This fera basculer la commande ls sur Exécuter 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 d'un autre groupe.

Pour des informations détaillées sur l'utilisation, veuillez vous référer à la page de manuel

sg .

4, xxd

xxd L'utilitaire 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. Vous pouvez utiliser cet utilitaire pour effectuer des vidages et des restaurations hexadécimaux, ce qui présente l'avantage supplémentaire de le faire. Il existe de nombreux indicateurs configurables et vous pouvez également effectuer des opérations de correctif sur les binaires.

Supposons que nous voulions faire un dump hexadécimal du fichier suivant nommé linuxmi :

linuxmi
Nous fournissons simplement l'entrée et xxd encodera automatiquement le fichier sur stdout (c'est un fonction par défaut pratique pour les fichiers d'entrée plus courts) :

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ xxd linuxmi00000000: 6c69 6e75 786d 690a

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

Vous pouvez également passer un argument de nom de fichier supplémentaire pour envoyer la sortie directement vers un fichier de vidage : #🎜🎜 #
xxd linuxmi 93139

有趣的宝藏!六个独特而惊人的 Linux 实用工具Cela enverra le dump hexadécimal vers un fichier nommé 93139. La page de manuel de

xxd peut être trouvée à l'adresse

ici

.

5、pwdx

这个实用的小程序源于广为人知、备受喜爱的古老 PS 实用程序家族。pwdx 实用程序可以让您获取运行中进程的当前工作目录。只要您提供进程的 PID,它就能告诉您该进程的工作目录所在位置。

假设我们想找出 cron 进程在我们的机器上的工作目录。我们可以通过使用 ps 命令搜索并获取其 PID,示例如下:

┌──(linuxmi㉿linuxmi)-[~/www.linuxmi.com]└─$ ps aux | grep cron

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

在这里,我们可以看到cron的PID是612。这时,我们只需将该进程的PID传递给pwdx,就能确定它的工作目录

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

如下图:

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

To access information about cron, you need to use sudo as it is a system process.。我们成功获取了cron的当前工作目录,即 /var/spool/cron,在命令执行完成后。当您需要跟踪目录范围问题时,这将是一个非常有价值的故障排除工具。您可以使用 pwdx 快速检查确定一个进程认为其应从哪个位置运行,以达到准确的目的。

这里查看 pwdx 的 man 页面。

6、write

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

The write utility actually allows you to send messages to other users on the same system.。您可以针对任何其他登录的用户发送消息。输入您的用户名,然后您可以进入一个交互式shell,用来书写任何您想要的文本。您键入的所有内容(包括换行符)都将出现在目标用户的控制台上。

这里是一个快速示例:

write <用户名>

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

虽然目前有更优秀的处理用户间消息传递的方法,但这仍然是计算历史的一部分。我相信今天仍然可以有一些创造性的用途。

这里查看官方的 man 页面。

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