Je suis nouveau sur Linux, et étant dyslexique, le travail à partir d’une ligne de commande est un défi. Quels outils ou conseils sont disponibles pour vous aider à résoudre ce problème?
Vous pouvez essayer quelques choses pour améliorer votre expérience avec la ligne de commande.
mkdir
suivi de cd
name__).history
name__, vous pouvez afficher l'historique des commandes , puis utiliser le numéro de la commande d'historique pour réexécuter la commande (par exemple, rétablir la commande n ° 352 avec !352
). Alias it to h
pour un accès rapide et facile.ls
pour répertorier le contenu d'un répertoire, par exemple, les sous-répertoires sont imprimés en bleu et les noms de fichiers en blanc, ce qui facilite la distinction entre les deux. Pour d'autres exemples, jetez un coup d'œil aux nombreuses personnalisations que les gens ont partagées. Certains valent certainement la peine d'être essayés "tels quels". Un bon point de départ est le populaire dépôt Awesome dotfiles .Je vais tenter une réponse globale. Si j'ai omis quelque chose, veuillez commenter et je l'ajouterai.
La complétion par tabulation est votre plus grande aide ici. Pressage Tab complétera la commande dans la mesure où elle est uniquement identifiable. Pressage Tab deux fois donnera une liste d'options. Taper suffisamment de caractères pour identifier l’option souhaitée et appuyer sur Tab à nouveau va le compléter. Cela fonctionne également avec les noms de chemin/fichier.
Par exemple, supposons que j'ai un utilisateur nommé Paul et qu'il ait les fichiers text123.txt et text124.txt dans son dossier Téléchargements:
Je pourrais taper/h Tab et bash me donnera /home/
. Puis tapez P Tab et obtenez /home/Paul/
. Et continuez ainsi jusqu'à ce que j'ai le fichier complet et le chemin.
La saisie automatique accepte également les caractères génériques *
et ?
. ?
correspond à un seul caractère et *
correspond à tous les caractères (ou à aucun). En utilisant l'exemple ci-dessus, je pourrais taper:
/h*/P*/Dow*/t*4*
puis Tab et bash me donnera /home/Paul/Downloads/text124.txt
. Si je suis sûr de trouver le bon fichier, je peux simplement appuyer sur Enter pour exécuter la commande sans la développer d'abord.
Certaines références de répertoire courantes sont:
~
pour votre répertoire personnel...
répertoire parent.
répertoire courant; au cas où vous voudriez être absolument sûr que bash sera dans le bon répertoire.La flèche du haut ↑ et flèche bas ↓ touches vous permet de naviguer dans une liste des commandes récemment utilisées. presse Ctrl+G pour sortir du mode de recherche historique. Alt+. répète le dernier argument de la commande précédente.
Bash vous permet de spécifier des alias. Si vous constatez souvent une erreur de frappe de la même manière, vous pouvez ajouter des alias personnalisés en modifiant ~/.bashrc
et en ajoutant des lignes comme celles-ci:
alias agi='apt-get install'
alias mkdri='mkdir'
Puis reconnectez-vous pour les activer.
Le shell Zsh (ou au moins la version que j'utilise, Oh-my-ZSH ) a une fonctionnalité qui vous corrige si vous faites de petites fautes de frappe dans les noms de commande et de fichier:
$ pyhton scirpt.py
zsh: correct 'pyhton' to 'python' [nyae]? y
zsh: correct 'scirpt.py' to 'script.py' [nyae]? y
...
Vous pouvez l'activer avec la ligne suivante dans votre .zshrc
:
# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="true"
Vous pouvez essayer d’utiliser la police dyslexique ouverte dans votre terminal. Cela pourrait aider à lire le texte. Cela suppose que vous utilisez le terminal ubuntu par défaut, qui, je l’espère, est identique au terminal GNOME.
J'ai appris que j'étais dyslexique après étant un ingénieur Unix et un utilisateur expérimenté de Shell pendant de nombreuses années sur de nombreuses plates-formes différentes (Linux, AIX et Solaris).
La dyslexie affecte différentes personnes à différents degrés, donc l'hypothèse selon laquelle "nous voyons les choses en désordre" peut être une simplification excessive et une source de frustration si elle ne vous affecte pas de cette façon - je trouve réellement la police par défaut de largeur fixe des terminaux extrêmement lisible ( le blanc sur noir me semble bien)
Les coquillages sont difficiles à apprendre avec beaucoup d'acronymes et de conventions peu intuitives pour naviguer, ce qui rend souvent difficile l'apprentissage pour les personnes qui aiment les mots simples avec des motifs réguliers.
Je comprends maintenant que la plupart des dyslexiques apprennent et mémorisent leurs expériences personnelles. Nous sommes très pauvres en apprentissage par cœur ou en consommant beaucoup de théorie théorique. Une fois que nous avons digéré la théorie par application, cependant, elle adhère généralement rapidement à une compréhension intrinsèque profonde. À cette fin, concentrez-vous sur la recherche d'exemples Shell et essayez-les en les tapant à la main et en comprenant le rôle de chaque ligne. Faites des expériences, cassez les choses, restez debout toute la nuit pour les corriger.
Au fil du temps, vous vous souviendrez de plus en plus de commandes et de motifs ponctuels dans la façon dont les développeurs ont implémenté leurs programmes, qui peuvent être appliqués à la commande suivante. Cependant, toutes les commandes ne suivent pas les mêmes conventions lors de la transmission d'arguments/paramètres, il faudra donc un certain temps pour apprendre les commandes similaires.
Comme tout le monde, après quelques années, cela deviendra une seconde nature. Avec le temps, cependant, vous pouvez acquérir l’avantage dyslexique en sachant intuitivement comment résoudre des solutions et effectuer une analyse complexe des causes profondes en utilisant votre capacité, au 6ème sens, de détecter des schémas ou des ruptures de schémas.
À l'exception de la complétion par onglets et des conseils clés, je pense que la plupart des réponses ne feront que rendre l'expérience encore plus pénible. Ignorez-les. La simplification est la clé
Pour compléter la réponse de @pomsky, je voudrais ajouter quelques points:
Apprenez à automatiser des choses, en particulier comment les boucles for
fonctionnent, comment fonctionne read
, comment fonctionne if
, quels sont [ ]
et [[ ]]
, utilisez le mode strict de bash officieux , car une fois un script est valide, il est plus facile de ne pas faire d'erreur.
si vous le pouvez, installez le paquetage de finalisation (peut avoir différents noms en fonction des versions)
Utilisez rm
avec le commutateur -i
dans des situations dangereuses (comme avec Sudo
), ou peut-être installer et utiliser rmtrash
(ce qui mettra des ordures dans la corbeille)
Utilisez cp
avec le commutateur -n
, qui n'écrasera pas les fichiers existants lors de la copie. (Bien sûr, plus utile lors de la copie récursive)
Apprenez à utiliser le fichier ~/.bashrc
. Cela vous permettra de mieux comprendre la variable $PS1
.
Et peut-être le plus difficile si vous êtes jeune:
Essayez de connaître un peu mieux les outils les plus récents et les plus courants de ce que vous faites.
$CXXFLAGS
dans votre ~/.bashrc
. (Par exemple: export CXXFLAGS=" -std=c++17 -fmax-errors=1 -Wall -Wextra -pedantic -Werror "
en fonction de votre version c ++ bien sûr, donc je suppose que c ++ 11 pour ubuntu), puis compilez avec make main.cpp
et vos options seront reportées. Notez que cet ensemble d’options est assez sévère: tout ce qui est correct et standard sera considéré comme une erreur et vous empêchera de compiler.Essayez "FISH" Shell interactif convivial. Disponible dans les pensions.
J'avais l'habitude de lutter avec la ligne de commande en utilisant BASH. Fish se souvient de toutes les dernières commandes et de la finalisation de ses offres. Sudo pour installer le poisson puis dans le type bash; poisson. Si vous le souhaitez, recherchez des instructions pour en faire votre shell par défaut. Il y a d'autres coquilles disponibles; POISSON est mon choix. Une fois que vous avez commencé, vous pourriez l’aimer.
Il existe un outil qui se situe entre une blague et une aide inestimable.
https://github.com/nvbn/thefuck
Vous pouvez l'essayer en plus d'autres recommandations de ce fil. L'idée principale est que lorsque vous écrivez quelque chose et recevez la commande inconnue ou quoi que ce soit, cet outil le corrigera et l'exécutera à nouveau.
Ce n'est pas une solution miracle, mais ça vaut peut-être la peine de l'essayer.