J'utilise la man
commande tout le temps quand je veux obtenir des informations sur une commande spécifique. Mais cela ne m'aide pas beaucoup quand cette commande spécifique est un shell intégré. Par exemple:
man cd
résultats:
No manual entry for cd
Ma question est: il est possible de faire man
travailler aussi pour toutes les commandes SHELL (comme cd
, alias
, history
, etc.), et des mots - clés (comme if
, while
, [[
, {
, etc.)?
command-line
manpage
Radu Rădeanu
la source
la source
echo
fait-il qu'une commande intégrée ait une page de manuel?echo
est également une commande système (exécutable) située dans/bin
. Vous pouvez vérifier cela en utilisanttype -a echo
. La même chose arrive avectime
et peut-être d'autres.info bash
encore?Réponses:
La
help
commande when est utilisée avec-m
option peut afficher des informations sur les commandes intégrées au format pseudo-manpage. Par exemple:affichera des informations sur la
cd
commande dans un format presque identique à celui d'une page de manuel.À partir de cette commande, vous pouvez insérer une
man
commande dans une fonction de votre.bashrc
fichier, comme suit:Après cela
man
fonctionnera également pour toutes les commandes et mots-clés intégrés au shell. Par exemple:Affichera:
la source
man time
contreman 1 time
zsh
utilisateur, vous n'êtes pas aussi chanceux: bugs.launchpad.net/ubuntu/+source/zsh/+bug/1242108 (pas de pages de manuel installées)info
,help -m
pourquoi ne pouvons-nous pas simplement avoir de bonnes pages de manuel ces jours-ci? En tout cas, merci!man type
ne produit pas une description des options "-a" ou "-t" dans Ubuntu 14.04.4 .... et pourtant, elles êtes là!Cela contient des extraits d’aide pour les commandes intégrées, mais dans un format légèrement plus condensé que l’
help
équivalent.la source
Vous pouvez installer des pages de manuel sur l’utilisation d’un système POSIX pour le développement en tant que,
Il fournira des pages de manuel pour les commandes intégrées au shell.
Maintenant essaye,
la source
Cette solution fonctionne parfaitement mais est un peu une blague aussi parce que la première chose à laquelle j'ai pensé en lisant votre question était: «Qui utilise encore littéralement man depuis la ligne de commande? Tout le monde ne recherche-t-il pas simplement dans la page de manuel de son choix (pour obtenir des fonctionnalités sophistiquées telles que le défilement illimité)? '. Je me suis ensuite rendu compte que les sites que je recherche généralement en Google ont les deux types de commandes, alors pourquoi ne pas les utiliser pour fournir une interface de page de manuel uniforme pour toutes les commandes. Par conséquent, ce plaisir est né.
Cela nécessite une connexion Internet pour toutes les entrées que vous n'avez pas déjà consultées au moins une fois. Il a également besoin de ces deux petites applications qui manquent dans une installation par défaut d'Ubuntu:
Celles-ci ne sont pas absolument nécessaires, mais elles aident à rendre l’apparence un peu plus agréable. Tidy nettoiera le code HTML et html2text formatera celui-ci en tant que texte formaté (ce qui est généralement assez trivial, car la plupart de ces sites sont déjà formatés et entourés de balises <pre>.
Maintenant, tout ce que vous avez à faire est d’ajouter ceci à la fin de
~/.profile
:Après vous être déconnecté puis revenu, vous devriez pouvoir taper ceci:
et il affichera la page de manuel pour
cd
.Ceci utilise un répertoire de données (/ usr / share / iman) afin de minimiser les exigences de notre réseau (afin que cela fonctionne pour les entrées que vous avez déjà trouvées même sans connexion), ainsi que pour réduire la charge sur ce site de pages de manuel linux aléatoires. J'ai trouvé avec les entrées du système que nous voulons aussi). Si vous ne l'utilisez plus, vous voudrez le supprimer pour récupérer de l'espace disque.
Espérons que le reste est assez simple.
la source
iman
fonction retourne la même sortie queman bash-builtins
.