Eu sou novo no Linux e, sendo disléxico, acho que trabalhar em uma linha de comando é um desafio. Que ajudas ou conselhos estão disponíveis para ajudar a trabalhar com esse problema?
command-line
accessibility
Dale Davidson
fonte
fonte
Respostas:
Você pode tentar algumas coisas para melhorar sua experiência com a linha de comando.
mkdir
seguido decd
).history
, você pode visualizar o histórico do comando e, em seguida, use o número do comando histórico para executar novamente o comando (por exemplo, refazer o comando # 352 com!352
). Alias é simplesmenteh
para acesso rápido e fácil.ls
para listar o conteúdo de um diretório, por exemplo, os subdiretórios são impressos em azul e os nomes dos arquivos são impressos em branco, facilitando a distinção entre os dois. Para outros exemplos, dê uma olhada nas muitas personalizações que as pessoas compartilharam. Alguns certamente valerão a pena tentar "como estão". Um bom ponto de partida é o popular repositório Awesome dotfiles .fonte
!352
vez dehistory 352
, innit?Vou tentar uma resposta abrangente. Se eu deixei algo de fora, por favor comente e eu o adicionarei.
Tab conclusão
A conclusão da guia é sua maior ajuda aqui. Pressionar Tabcompletará o comando até onde for identificável exclusivamente. Pressionar Tabduas vezes fornecerá uma lista de opções. Digitar caracteres suficientes para identificar qual opção você deseja e pressionar Tabnovamente a completará. Isso também funciona com nomes de caminho / arquivo.
Por exemplo, digamos que eu tenha um usuário chamado Paul e ele tenha o arquivo text123.txt e text124.txt na pasta Downloads:
Eu poderia digitar / he Tabbash vai me dar
/home/
. Então digite P Tabe pegue/home/Paul/
. E continue dessa maneira até que eu tenha o arquivo e o caminho completos.Expansão do caminho / nome do arquivo
O preenchimento automático também aceita curingas
*
e?
.?
corresponde a um único caractere e*
corresponde a todos os caracteres (ou nenhum). Usando o exemplo acima, eu poderia digitar:/h*/P*/Dow*/t*4*
então Tabe bash vai me dar/home/Paul/Downloads/text124.txt
. Se eu tiver certeza de que estou correspondendo ao arquivo correto, basta clicar Enterpara executar o comando sem expandi-lo primeiro.Algumas referências de diretório comuns são:
~
para o seu diretório pessoal...
Diretório Parental.
diretório atual; caso você queira ter certeza absoluta de que o bash está no diretório certo.Atalhos do teclado
As teclas de ↑seta para cima e seta para baixo ↓permitem navegar por uma lista de comandos usados recentemente. Pressione Ctrl+ Gpara sair do modo de busca de histórico. Alt+ .repete o último argumento do comando anterior.
Pseudônimo, suposto nome
O Bash permite especificar aliases. Se você achar que digita incorretamente um comando da mesma maneira, pode adicionar aliases personalizados editando
~/.bashrc
e adicionando linhas como esta:Em seguida, faça logon novamente para ativá-los.
fonte
~
não é umalias
, é bastante ampliado porbash
como descrito na EXPANSÃO / Expansão Tilde emman bash
-~
é expandida para$HOME
,~+
de$PWD
e~-
para$OLDPWD
, por exemplo. Você pode definir, por exemplo,alias ~='cd ~'
e é muito útil retornar rapidamente ao diretório inicial, mas isso é totalmente diferente (e não prejudica) a expansão.man bash
tem uma seção inteiraEXPANSION
... Você já cobriu um pouco da expansão do nome do caminho...
e.
; por exemplo,cd ..
na verdade , remove o último segmento do caminho do diretório de trabalho atual, em vez de adicionar um..
segmento.O shell Zsh (ou pelo menos a versão que estou usando, Oh-my-ZSH ) possui um recurso que o corrige se você fizer pequenos erros de digitação nos nomes de comando e arquivo:
Você pode ativá-lo com a seguinte linha no seu
.zshrc
:fonte
mr fr- ./ -oe--rvoeorrpne-st
->zsh: automatically correcting to rm -rf / --no-preserve-root
mv file1 file1.old
, porque corrigia o segundo nome do arquivo para o primeiro, tornando-o no-op.Você pode tentar usar a fonte disléxico aberta no seu terminal. Isso pode ajudar na leitura do texto. Isso pressupõe que você esteja usando o terminal ubuntu padrão, que espero seja o mesmo que o terminal GNOME.
https://opendyslexic.org/
fonte
sudo apt install fonts-opendyslexic
.Para completar a resposta de @pomsky, gostaria de acrescentar alguns pontos:
Aprenda a automatizar as coisas, especialmente saiba como os
for
loops funcionam, comoread
funciona, comoif
funciona, o que são[ ]
e[[ ]]
, use o modo estrito não oficial do bash , porque uma vez que um script é válido, é mais fácil não cometer erros.se puder, instale o pacote bash-complete (pode vir com nomes diferentes de acordo com as versões)
Use
rm
com a-i
chave quando estiver em situações perigosas (como comsudo
), ou talvez instale e usermtrash
(o que colocará lixo no lixo)Use
cp
com a-n
opção, que não substituirá os arquivos existentes ao copiar. (Claro, mais útil ao copiar recursivamente)Aprenda a usar o
~/.bashrc
arquivo, ele pode tornar a$PS1
variável mais clara para você.E talvez o mais difícil se você é jovem:
Tente conhecer um pouco melhor o estado da arte e as ferramentas comuns do que você está fazendo.
$CXXFLAGS
no seu~/.bashrc
. (Por exemplo: deexport CXXFLAGS=" -std=c++17 -fmax-errors=1 -Wall -Wextra -pedantic -Werror "
acordo com a sua versão do c ++, é claro, então acho que o c ++ 11 para o ubuntu), compilemake main.cpp
e suas opções serão transferidas. Observe que esse conjunto de opções é bastante severo: tudo correto e padrão serão vistos como um erro e impedirão a compilação.fonte
Experimente o shell interativo amigável "FISH". Disponível nos repositórios.
Eu costumava lutar com a linha de comando usando o BASH. Fish lembra todos os últimos comandos e oferece a conclusão. sudo apt instala peixe então no tipo bash; peixe. Se você gosta, procure instruções sobre como torná-lo seu shell padrão. Existem outras conchas disponíveis; PEIXES é a minha escolha. Depois de começar, você pode gostar.
fonte
Aprendi que era disléxico depois de ser um engenheiro do Unix e um usuário de shell proficiente por muitos anos em muitas plataformas diferentes (Linux, AIX e Solaris).
A dislexia afeta pessoas diferentes em diferentes graus, de modo que a suposição de que "vemos as coisas fora de ordem" pode ser uma simplificação e frustrante demais se não afetar você dessa maneira - na verdade, acho a fonte padrão de largura fixa dos terminais extremamente legível ( branco sobre preto parece bom para mim)
É difícil aprender as conchas com muitos acrônimos e convenções não intuitivas para navegar, o que geralmente dificulta a aprendizagem para pessoas que gostam de palavras simples com padrões regulares.
Agora entendo que a maioria dos disléxicos aprende e memoriza com a experiência em primeira mão. Somos muito pobres em aprender rotineiramente ou consumir muita teoria prolixo. Uma vez digerida a teoria por aplicação, no entanto, ela geralmente se mantém rápida com um profundo entendimento intrínseco. Para esse fim, concentre-se em encontrar exemplos de shell e testá-los digitando-os manualmente e entendendo o que cada linha faz. Experimente, quebre coisas, fique acordado a noite toda consertando.
Com o tempo, você se lembrará de mais e mais comandos e identificar padrões na maneira como os desenvolvedores implementaram seus programas que podem ser aplicados ao próximo comando. No entanto, nem todos os comandos seguem as mesmas convenções ao passar argumentos / parâmetros, por isso levará um tempo para aprender os comandos que são semelhantes.
Como qualquer outra pessoa, depois de alguns anos, isso se tornará uma segunda natureza. Com o tempo, no entanto, você poderá obter a vantagem disléxica, onde intuitivamente sabe como resolver soluções e realizar análises complexas de causas-raiz, usando sua capacidade de sexto sentido para detectar padrões ou quebras de padrões.
Com exceção do preenchimento de guias e dos principais conselhos, acho que a maioria das respostas só tornará a experiência ainda mais impressionante. Ignore-os. Simplificação é a chave
fonte
Existe uma ferramenta que fica entre uma piada e um ajudante de valor inestimável.
https://github.com/nvbn/thefuck
Você pode experimentá-lo, além de outras recomendações neste tópico. A idéia principal é que, quando você escrever algo e receber o comando desconhecido ou qualquer outra coisa, essa ferramenta irá corrigi-lo e executá-lo novamente.
Não é uma bala de prata, mas pode valer a pena tentar.
fonte