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?
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?
Réponses:
Vous pouvez essayer quelques choses pour améliorer votre expérience avec la ligne de commande.
mkdir
suivi de cd
).history
, 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
). Dites-le simplement 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 de fichiers de fichiers Awesome .!352
place de history 352
, innit?
Je vais tenter une réponse complète. Si j'ai omis quelque chose, commentez et je l'ajouterai.
La complétion par tabulation est votre plus grande aide ici. Appuyez sur Tabpour terminer la commande dans la mesure où elle est uniquement identifiable. Un Tabdouble appui donnera une liste d’options. Taper suffisamment de caractères pour identifier l’option souhaitée et appuyer à Tabnouveau pour la terminer. 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 Tabet bash me le donnera /home/
. Puis tapez P Tabet 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*
alors Tabet bash me donnera /home/Paul/Downloads/text124.txt
. Si je suis sûr que je fais correspondre le bon fichier, je peux simplement appuyer sur Enterpour exécuter la commande sans le développer au préalable.
Certaines références de répertoire courantes sont:
~
pour votre répertoire personnel...
Dossier Parent.
répertoire actuel; au cas où vous voudriez être absolument sûr que bash sera dans le bon répertoire.Les flèches haut ↑et bas ↓vous permettent de naviguer dans une liste de commandes récemment utilisées. Appuyez sur Ctrl+ Gpour 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 que la commande est mal typée, 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.
~
est pasalias
, il est plutôt développé par bash
comme décrit dans EXPANSION / Tilde Expansion enman bash
- ~
est étendu à $HOME
, ~+
à $PWD
et ~-
à , $OLDPWD
par exemple. Vous pouvez en fait paramétrer par exemple alias ~='cd ~'
et il est très utile de revenir rapidement au répertoire d’origine, mais c’est totalement différent de l’extension (et cela ne fait pas de mal).
man bash
a toute une section EXPANSION
… Vous avez déjà couvert un peu d’extension de nom de chemin.
..
et .
; par exemple, cd ..
supprime réellement le dernier segment de chemin du répertoire de travail actuel, plutôt que d'ajouter un ..
segment.
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"
mr fr- ./ -oe--rvoeorrpne-st
->zsh: automatically correcting to rm -rf / --no-preserve-root
mv file1 file1.old
, car le deuxième nom de fichier serait corrigé en premier, ce qui en ferait un non-op.
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.
sudo apt install fonts-opendyslexic
.
Pour compléter la réponse de @pomsky, je voudrais ajouter quelques points:
Apprenez à automatiser les choses, surtout apprendre comment le for
travail des boucles, comment ne read
fonctionne, comment ne if
fonctionne, quels sont [ ]
et [[ ]]
, utilisez le bash officieux mode strict , car une fois un script est valide, il est plus facile de ne pas faire des erreurs.
si vous le pouvez, installez le paquet bash-completion (peut avoir différents noms selon les versions)
Utiliser rm
avec le -i
commutateur dans des situations dangereuses (comme avec sudo
), ou peut-être installer et utiliser rmtrash
(ce qui mettra des déchets dans la corbeille)
Utiliser cp
avec le -n
commutateur, 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 ~/.bashrc
fichier, cela peut rendre la $PS1
variable plus claire pour vous.
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 communs de ce que vous faites.
$CXXFLAGS
dans votre ~/.bashrc
. (Par exemple: export CXXFLAGS=" -std=c++17 -fmax-errors=1 -Wall -Wextra -pedantic -Werror "
selon votre version de c ++ bien sûr, donc je suppose que c ++ 11 pour Ubuntu), alors compilez avec make main.cpp
et vos options seront reportées. Notez que cette option est assez dure: 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 apte à installer fish, puis de 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.
J'ai appris que j'étais dyslexique après avoir été ingénieur Unix et expert en shell pendant de nombreuses années sur de nombreuses plates-formes différentes (Linux, AIX et Solaris).
La dyslexie affecte différentes personnes à des degrés différents, de sorte que l'hypothèse "nous voyons les choses en désordre" peut être une simplification excessive et frustrante 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 de nombreux acronymes et conventions peu intuitives, ce qui complique souvent l'apprentissage des personnes qui aiment les mots simples et 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. Pour ce faire, concentrez - vous sur la recherche d’exemples de shell et essayez-les en les tapant à la main et en comprenant le rôle de chaque ligne. Faites des expériences, cassez des choses, restez debout toute la nuit à les réparer.
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, toutefois, 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 modèles ou des ruptures de modèles.
À l'exception de la complétion par onglets et des conseils clés, je trouve que la plupart des réponses ne feront que rendre l'expérience encore plus pénible. Ignore les. La simplification est la clé
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.