Juste une petite question. Est-il possible de tabuler la sortie sur Ubuntu 16.04 LTS? J'ai créé deux images ci-dessous pour essayer d'illustrer ce que je veux dire par là.
command-line
bash
Alex Ng
la source
la source
YOUR COMMAND | indent
ou si vous devez taper une autre commande devant elle (pourrait même être seulement un trait de soulignement) comme_ YOUR COMMAND
?Réponses:
Vous pourriez faire quelque chose comme ça - avec des descripteurs de fichiers:
enregistrer le descripteur de sortie actuel afin que nous puissions le restaurer plus tard
rediriger le flux de sortie vers une substitution de processus qui insère l'onglet - par exemple
À partir de ce point, tout processus qui écrit sur la sortie standard verra cette sortie «filtrée» via la
paste
commande pour insérer des onglets au début.Lorsque vous avez terminé, vous pouvez reprendre un comportement normal en restaurant le descripteur de fichier enregistré et en fermant le descripteur temporaire
la source
less
ou des outils similaires pour permettre le défilement de la sortie, comme par exempleman
.Je comprends que cette réponse n'est pas optimale pour vous, mais vous pouvez créer une fonction Bash avec le nom simple
_
(ou toute autre chose qui n'est pas encore utilisée) qui exécute la commande qu'elle obtient en tant qu'arguments et met en retrait toute sa sortie avec un onglet.Un exemple:
Le code de cette fonction ne serait que ceci:
Vous pouvez l'ajouter à votre
~/.bashrc
fichier afin qu'il soit disponible dans toutes les sessions Bash de votre utilisateur en exécutant:Si vous souhaitez le rendre disponible à tous les utilisateurs, ajoutez-le à la
/etc/bash.bashrc
place (nécessite des droits d'administrateur):Alternativement, vous pouvez également créer un fichier de script
/usr/local/bin/_
avec le contenu suivant pour obtenir le même sans fonctions Bash et pour tous les utilisateurs:Vous devez rendre le script exécutable après avoir enregistré le fichier à l'aide de
la source
Avec
echo
spécifiquement, vous pouvez lui faire interpréter les échappements antislash comme\t
(un taquet de tabulation ) avec le-e
commutateur:Mais il ne serait guère possible (ou probablement possible) de modifier la sortie de chaque commande de cette façon. Si la facilité de lecture est votre objectif, vous pouvez envisager de personnaliser l'apparence (par exemple la coloration) de votre invite de commande, comme illustré ici:
Vous pouvez personnaliser votre invite en modifiant le contenu de la variable d'environnement
PS1
. Vous pouvez voir un petit exemple de la façon de le faire dans le billet de blog de la capture d'écran ci-dessus. Comment utiliser en détail ces soi-disant séquences d'échappement ANSI, comment utiliser des outils plus confortables, comment appliquer les modifications par défaut dans de nouveaux terminaux, etc., dépassent le cadre de cette réponse. Mais si vous décidez d'utiliser cette technique, il existe de nombreux didacticiels et d'autres informations sur le Web.la source