L'achèvement de l'onglet Linux est encore meilleur que vous ne le pensez
Sommaire
Résumé
-
La fonction d'achèvement de l'onglet permet de gagner du temps et empêche les erreurs par les commandes et les noms de fichiers d'achèvement automatique.
-
Les coquilles Linux comme Bash et Zsh offrent des fonctionnalités d'achèvement puissantes qui gèrent les sous-communs et les options.
-
La commande git présente le plein potentiel de l'onglet avec des compléments spécifiques au contexte.
Linux est plein de raccourcis, il vous suffit de savoir ce qu'ils sont ou où les chercher. L'achèvement de l'onglet est l'une de ces fonctionnalités qui est excellente à son plus simple, avec un pouvoir caché que vous ne connaissez peut-être pas.
Qu'est-ce que l'onglet Achèvement?
L'achèvement de l'onglet est une petite fonctionnalité fantastique qui ajoute la commodité, gagne du temps et peut même aider à prévenir les erreurs. C'est l'une des formes les plus anciennes d'achèvement automatique dans le calcul: appuyez sur une ligne de commande sur une ligne de commande et vous verrez une commande ou un nom de fichier terminé (s'il est sans ambiguïté) ou un ensemble d'options possibles (si ambigu).
Voici quelques exemples du fonctionnement de l'achèvement de l'onglet.
L'achèvement de l'onglet est une caractéristique de votre coquille, et cet article se concentre sur deux des plus utilisés: Bash et Zsh. L'achèvement est hautement configurable et les caractéristiques varient entre les systèmes.
Tapez les premières lettres d'une commande (essayez avr ou MKD), puis appuyez sur l'onglet. Si votre shell ne trouve qu'une seule commande commençant par ces lettres, elle la complètera automatiquement en imprimant les lettres restantes. Maintenant, vous pouvez appuyer sur Entrée pour exécuter la commande ou continuer à taper pour fournir plus d'arguments.
Si votre texte initial correspond à plusieurs commandes, leurs noms imprimeront à l'écran. Voici un exemple montrant le texte RM suivi d'un onglet:
Vous pouvez continuer à taper et appuyer sur l'onglet pour affiner la liste jusqu'à ce qu'elle soit sans ambiguïté ou que vous ayez tapé votre commande complète.
L'achèvement de l'onglet fonctionne également pour les noms de fichiers que vous fournissez comme arguments. Par exemple, vous pouvez taper LS / U suivi de l'onglet et votre coquille devrait la terminer à LS / USR /. Il est beaucoup plus rapide de taper des chemins plus longs, et il est également beaucoup moins sujet aux erreurs.
Ce niveau d'achèvement de l'onglet transformera votre expérience Linux. Quand j'ai appris l'achèvement pour la première fois, c'était comme de la magie, et je ne pense pas que je pourrais vivre sans la fonctionnalité aujourd'hui. Mais, comme je l'ai découvert récemment, l'achèvement TAB offre bien plus que la simple commande et l'achèvement du nom de fichier.
L'achèvement de l'onglet est tellement plus
Pour commencer, essayez l'achèvement de l'onglet avec une commande comme CD, dans un répertoire contenant à la fois des fichiers et des dossiers. Tu devrais remarquer que CD {start-of-directory}alors onglet, complete automatiquement le nom du répertoire, mais CD {début de fichier}alors l'onglet, ne le fait pas. Le shell est suffisamment intelligent pour reconnaître que l'argument de CD devrait être un chemin d'accès à un répertoire, pas à un fichier, donc il complete automatiquement le premier, mais pas le second.
Votre coquille doit inclure une barre oblique après avoir terminé un répertoire, même si vous n'avez besoin que de fournir le nom du répertoire. Cela vous permet de s'approprier rapidement un chemin entier sans avoir à s'arrêter et à taper chaque nom de répertoire.
En affichant toutes les correspondances lorsqu'il y en a plus d'un, votre coquille peut vous aider à affiner tout ce que vous essayez de taper. Mais certains obus vont plus loin. Par exemple, en zsh, sur macOS, quand je tape ls faire Suivi de l'onglet, mon shell imprime deux matchs, documents et téléchargements:
Si j'appuie maintenant à l'onglet, il se termine à documents ls /et appuyer sur l'onglet plus loin dans les cycles entre documents ls / et LS Téléchargements /. Notez que cela ne se produit que lorsqu'il y a une ambiguïté. Si vous tapez documents ls /puis appuyez sur l'onglet, l'achat automatique imprimera tous les fichiers dans les documents plutôt que de faire du vélo vers le répertoire des téléchargements.
Ajouter Onglet de liaison: menu-complete à votre ~ / .bashrc ou Onglet: menu-complet à votre ~ / .inputrc si vous voulez ce comportement.
Pour accepter un achèvement lors du vélo, mais continuez l'onglet compléter – pour un long chemin – vous pouvez appuyer / à la fin du répertoire que vous souhaitez sélectionner.
L'achèvement de l'onglet peut également gérer les options prises en charge par la commande que vous avez tapée. Par exemple, essayez de taper Mkdir – suivi d'un onglet. Encore une fois, les résultats dépendront de votre environnement, mais de toute façon vous devriez pouvoir voir une liste d'options que MKDIR prend en charge:
Sur macOS, mon shell affiche des options de lettres à une seule lettre pour mkdir, comme -m et -p. Parallèlement à chacun, il affiche un texte d'utilisation qui explique ce que fait l'option. Sur Ubuntu, mon shell affiche de longues options. Il n'imprime aucune information d'utilisation, mais les longues options sont de toute façon plus auto-documentées.
En rapport
5 façons de faire fonctionner les commandes Linux comme vous le souhaitez
Vous ne connaissez pas vraiment la pleine puissance de Linux jusqu'à ce que vous puissiez modifier votre ensemble d'outils.
La commande git est terminée à l'étape suivante
Les options de réalisation automatique étaient une véritable révélation pour moi. J'étais tellement habitué à utiliser l'homme ou une option – help pour afficher l'utilisation des commandes, je ne savais pas que mon shell pouvait faire beaucoup de travail pour moi. Mais c'est la commande git qui m'a vraiment montré le véritable pouvoir de l'achèvement automatique, et il est transformé comme je travaille depuis.
Le programme GIT est incroyablement conscient de soi, de sorte que ses options d'achèvement automatique fournissent efficacement une interface alternative. Vous pouvez commencer par explorer toutes les sous-commandes de Git en tapant git suivi d'un onglet:
Mais Git Auto-Complete montre sa pleine puissance lorsque vous travaillez dans un référentiel GIT. Disons que vous avez apporté un changement à un seul fichier local, comme un Readme.md:
Tapez maintenant git ajouteralors un onglet, et votre coquille devrait transformer cela en git ajouter readme.md. Le programme GIT a reconnu que la sous-commande ADD peut être suivie d'une liste de noms de fichiers pour les ajouter à l'engagement actuel. Il est conscient qu'il est logique d'ajouter des fichiers qui ont réellement changé, il peut donc compléter automatiquement le nom complet du seul fichier qui doit être ajouté.
En rapport
10 commandes GIT de base pour vous aider à démarrer
Git peut être intimidant pour les débutants, mais la meilleure façon d'apprendre est de plonger et de commencer à l'utiliser.
De même, une fois que vous avez ajouté un fichier, git engager Ensuite, TAB complète automatiquement son nom, ainsi que d'autres fichiers que vous pouvez commettre immédiatement, y compris les fichiers que vous n'avez pas encore ajoutés:
Cet achèvement prend même en compte les arguments. Par exemple, une fois que vous avez ajouté un fichier à l'index, vous pouvez le déconcerter à l'aide de Git Restore – Staged, comme l'explique Git Status. À ce point, Git Restore – a été suivi d'un onglet affichera juste Readme.md, le seul fichier mis en scène:
L'achèvement de l'onglet est si utile que vous vous retrouverez à l'utiliser tout le temps une fois que vous l'avez découvert. Mais il est toujours avantageux d'être curieux: continuez à appuyer sur l'onglet à différents points de votre chaîne de commande, et vous apprendrez exactement à quel point cette fonctionnalité peut être puissante.