GNU/Linux >> Tutoriels Linux >  >> Linux

Comment puis-je trouver de l'aide pour la commande de point `.` dans * nix ?

Tout d'abord, vous devez invoquer type . , vous obtiendrez probablement quelque chose comme :

. is a shell builtin

Les commandes intégrées font partie de votre shell, elles n'ont pas leurs propres pages de manuel. Certains d'entre eux peuvent sembler en avoir, par ex. echo est un intégré dans Bash mais il y a très probablement un exécutable séparé comme /bin/echo dans votre système et dans ce cas man echo fait référence à dernier . Ces deux echo s ne sont probablement pas strictement équivalents.

Votre shell peut fournir des informations sur n'importe quel intégré via help intégré ; essayez help help , help type et enfin :

help .

Les fonctions intégrées peuvent également être répertoriées dans la page de manuel de votre shell. Par exemple. (dans ma Debian) Les commandes intégrées de Bash sont couvertes directement dans man bash , mais pour les commandes intégrées Zsh man zsh me dit d'exécuter man zshbuiltins . En général, les shells peuvent expliquer ou non leurs fonctions intégrées.


Essayez d'utiliser man sh ou man bash ou la page de manuel du shell que vous utilisez. (Peut-être man $SHELL .)

Ce n'est officiellement pas appelé la commande "point", mais le source commande. Recherche du mot source peut être utile.

par exemple, la page de manuel bash (recherchez "chaque commande intégrée"), et vous trouverez rapidement la documentation.

Quant à expliquer l'utilisation, je peux le faire ici. Je ferai simplement référence à cela comme le source commande, en reconnaissant qu'elle peut être abrégée en une période lorsque vous utilisez certains shells, et avec certains shells, cette commande peut avoir besoin d'être (car le point peut être reconnu mais le mot entier source peut-être pas).

Si vous utilisez le source commande, votre shell lira chaque ligne du fichier de script et tentera de l'exécuter. Vous avez besoin d'autorisations de "lecture" sur le fichier. (Peu importe si vous avez des autorisations "d'exécution".) Si vous modifiez une variable, cela risque d'affecter votre shell actuel.

Si, au contraire, vous essayez simplement d'exécuter le fichier, votre shell demandera au système d'exploitation de prendre en charge cette requête. Cela nécessitera des autorisations "d'exécution". (Sur certains systèmes, comme OpenBSD, vous n'aurez pas besoin d'autorisations de "lecture" pour cela. Sur d'autres systèmes, y compris de nombreuses variantes d'Unix, vous en aurez besoin.) Le fichier peut avoir besoin de commencer par un en-tête approprié (par exemple, #!/bin/sh ) afin que le système d'exploitation reconnaisse qu'il s'agit d'un fichier de script. Le système d'exploitation exécutera une copie du shell demandé et indiquera à ce shell d'exécuter le contenu du script. Si l'environnement shell est modifié (par exemple, une variable prend une nouvelle valeur, le répertoire de travail est modifié (avec cd ), un descripteur de fichier est redirigé (avec exec ), etc.), cela n'affectera que le sous-shell qui a été appelé pour le script et ne peut pas modifier l'environnement dans le shell parent qui a appelé le fichier de script.


Personne d'autre ne l'a mentionné, car il est souvent oublié.

Votre plus grand indice proviendrait de la commande utile whatis .

[email protected] ~ $ whatis .
builtins (1)         - bash built-in commands, see bash(1)
[email protected] ~ $ whatis source
builtins (1)         - bash built-in commands, see bash(1)
[email protected] ~ $ whatis bash
bash (1)             - GNU Bourne-Again SHell
[email protected] ~ $ whatis lynx
lynx (1)             - a general purpose distributed information browser for the World Wide Web
[email protected] ~ $ whatis linux
linux: nothing appropriate.
[email protected] ~ $ whatis whatis
whatis (1)           - display one-line manual page descriptions

MODIF :

Certaines personnes ont souligné dans les commentaires que ce n'est pas dans certaines distributions - c'est peut-être un paquet installable, ou activé d'une certaine façon - je l'avais par défaut dans gentoo;)

Il inclut le merveilleux qui - qui vous indique quel exécutable est appelé, et où est qui vous donne tous les chemins vers un exécutable que vous nommez, et ses pages de manuel (s'il existe dans plusieurs chemins).


Linux
  1. Comment créer un environnement Shell propre pour une utilisation temporaire ?

  2. Comment exécuter une application pendant une durée définie dans Shell ?

  3. Comment exclure un répertoire dans find . commande

  4. Comment rechercher des fichiers à l'aide de regex dans le script shell Linux

  5. Comment puis-je trouver ma version de shell à l'aide d'une commande Linux ?

Shell Scripting pour les débutants - Comment écrire des scripts Bash sous Linux

Comment rechercher des fichiers à partir de la ligne de commande Linux

Comment utiliser la commande Declare dans Linux Bash Shell

Comment exécuter une commande dans un script shell ?

Comment rechercher des fichiers avec des dizaines de critères avec la commande Bash Find

Comment exécuter une commande plusieurs fois à l'aide du shell bash ?