Ferramentas do usuário

Ferramentas do site


dicas_unix_e_etc

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anteriorRevisão anterior
Próxima revisão
Revisão anterior
dicas_unix_e_etc [2017/08/08 15:20] cartoladicas_unix_e_etc [2019/11/04 08:12] (atual) – [Cedilha (cedilla) errado] cartola
Linha 1: Linha 1:
 +
 +====== Boas práticas de programação Shell script ======
 +
 +
 +Como este tema tende a se tornar grande pra colocar aqui numa página com outros assuntos, optei por criar [[boas_praticas_de_programacao_shell_script|uma página só dele]].
 +
  
 ====== Recuperação de discos ====== ====== Recuperação de discos ======
  
  
-Gosto muito de dois programas, o testdisk, capaz de recuperar partições, setor de boot e outras coisas, mas para recuperação de arquivos gostei mais do foremost. Interessante registrar ela aqui, pois é impressionante como eu nunca lembro o nome dela e sempre tenho que pesquisar um tempão até achar.+Gosto muito de dois programas, o testdisk, capaz de recuperar partições, setor de boot e outras coisas, mas para recuperação de arquivos gostei mais do foremost. Interessante registrar ela aqui, pois é impressionante como eu nunca lembro o nome dele e sempre tenho que pesquisar um tempão até achar.
  
  
Linha 78: Linha 84:
   *  showkey   *  showkey
   *  evtest   *  evtest
 +
 +
 +====== Colando texto sem acentos no VI/VIM ======
 +
 +
 +Um problema que tenho há ANOS é colar texto em um editor vi/vim em um terminal numa janela gráfica. Pode ser que o problema não ocorra em outras combinações de ferramentas, então vale mencionar que uso vi (vim) em um xterm num XFCE com teclado brasileiro. O sistema está todo configurado pra acentuar normalmente, afinal redijo textos como este aqui, em português, que precisam de acentos. Quando vou colar códigos ou qualquer outros textos, porém, é comum aparecerem textos entre aspas " ou plics ' e aí, na hora de colar, se vem um plic e um "a", por exemplo, o que sai é uma letra acentuada "á" e ainda some o plic que era necessário pra delimitar o texto.
 +Exemplo:
 +**Ao colar o texto**\\ "Um elemento importante"
 +**aparece**\\ Üm elemento importante"
 +Pra resolver isso temos que desativar tanto a acentuação no ambiente gráfico (X Windows) quanto no VI:
 +  *  Com esse comando a acentuação no X é desativada:
 +$ setxkbmap -layout us -variant mac
 +Só cuidado, pois as teclas especiais vão ficar fora do lugar. Pode tentar achar outro modelo de teclado mais parecido, mas não tive grandes problemas com isso, o que precisei consegui encontrar.
 +  *  Ao chamar o VIM use a opção -u NONE pra que ele não leia configurações e plugins, evitando acentuação interna que pode estar configurada nele:
 +$ vi -u NONE seu_arquivo.txt
 +  *  Depois que terminar é só voltar o teclado. O meu é esse aqui (teclado brasileiro mais comum hoje em dia, que tem tecla "ç"):
 +$ setxkbmap -model abnt2 -layout br -variant abnt2
 +Se não conseguir restaurar pode tentar reconfigurar na interface gráfica mesmo ou, no pior caso, deve voltar ao normal após um reboot, o que não é realmente uma boa opção. O ideal é descobrir o modelo, leiaute e variante do seu teclado.
  
  
Linha 91: Linha 115:
   *  [[compilando_o_warzone2100_no_free_bsd]] / [[compiling_warzone2100_on_a_free_bsd]]   *  [[compilando_o_warzone2100_no_free_bsd]] / [[compiling_warzone2100_on_a_free_bsd]]
  
 +
 +====== Acertando acentos, teclas erradas de teclado e cedilha ======
 +
 +
 +É importante saber que as configurações de acentuação e teclado são diferentes para o ambiente gráfico e a console do sistema. Aqui vou falar primeiro do ambiente gráfico (X11/Xorg).
 +
 +
 +===== Acentos em geral =====
 +
 +Primeiro recomendo acertar o teclado em uso e isso pode variar dependendo do gerenciador de janelas usado. O ambiente gráfico no *nix é um pouco diferente do que alguns podem ter visto no Rwindows. Existe uma camada de servidor, o X11, sobre a qual rodam os gerenciadores de janela específicos, como: Gnome, KDE, XFCE e muitos, muitos outros. Cada um tem uma forma diferente de configurar o leiaute de teclado.
 +
 +XFCE - tenho usado atualmente o XFCE, que tem um aplicativo para configuração de teclado. Pra usar ele é só ir no menu e digitar teclado (ou keyboard se estiver em inglês) e chamar o aplicativo com este nome. Dentro dele, na aba "Disposição", é possível configurar tanto o tipo de teclado que está em uso (105 teclas padrão, por exemplo) como o leiaute de teclas, por exemplo, Inglês EUA internacional com teclas mortas ou Português (Brasil). Em alguns casos depois dessa correta configuração já está tudo resolvido. Se você não sabe exatamente qual é o seu teclado, vale uma pesquisa e alguns testes pra ver se acerta por aí.
 +
 +
 +===== Teclas erradas =====
 +
 +Dependendo do teclado que você está usando, pode ser que os acentos estejam todos corretos, mas que alguma tecla não esteja funcionando ou esteja trocada. O mais comum é que isso aconteça com teclas de símbolos como a barra "/", a barra vertical "|" etc. O modo mais prático de acertar esse problema pontual é usar o xmodmap. [[http://xahlee.info/linux/linux_xmodmap_tutorial.html|Esse é um bom tutorial]] que encontrei e de onde peguei as dicas abaixo.
 +  *  xev - use esse comando para descobrir o keycode da(s) tecla(s) que quer que tenha alguma função ou que está errada
 +  *  xmodmap -pke - vai mostrar todas as configurações atuais. Pode jogar num arquivo pra analisar
 +Depois disso você pode criar um arquivo de xmodmap. Basta usar a saída do "xmodmap -pke". Pode usar apenas as linhas que interessam, alterando de acordo com o que precisa. Tendo esse arquivo, digamos, com o nome xmodmap.meu basta carregá-lo com "xmodmap xmodmap.meu"
 +É possível colocar esse arquivo para ser carregado na entrada, mas novamente isso vai depender do gerenciador de janelas usado.
 +
 +
 +===== Cedilha (cedilla) errado =====
 +
 +Em alguns casos o cedilha ainda fica incorreto: "ć" e "Ć". Isso acontece normalmente em teclados americanos (que não tem a tecla cedilha) onde acentuamos com ' + c.
 +
 +**Solução 1**\\ Editar o arquivo /etc/environment inserindo as linhas abaixo:
 +  GTK_IM_MODULE=cedilla
 +  QT_IM_MODULE=cedilla
 +e reiniciando o computador em seguida.
 +
 +**Solução 2**\\ Editar o arquivo /usr/share/X11/locale/en_US.UTF-8/Compose e colocar os caracteres corretos (copie da internet, daqui por exemplo) nos lugares onde tem <dead_acute> <c> 
 +  <dead_acute> <C>                        : "Ç"   U0106 # LATIN CAPITAL LETTER C WITH ACUTE
 +  <Multi_key> <acute> <C>                 : "Ç"   U0106 # LATIN CAPITAL LETTER C WITH ACUTE
 +  <Multi_key> <apostrophe> <C>            : "Ç"   U0106 # LATIN CAPITAL LETTER C WITH ACUTE
 +  <Multi_key> <C> <apostrophe>            : "Ç"   U0106 # LATIN CAPITAL LETTER C WITH ACUTE
 +  <dead_acute> <c>                        : "ç"   U0107 # LATIN SMALL LETTER C WITH ACUTE
 +  <Multi_key> <acute> <c>                 : "ç"   U0107 # LATIN SMALL LETTER C WITH ACUTE
 +  <Multi_key> <apostrophe> <c>            : "ç"   U0107 # LATIN SMALL LETTER C WITH ACUTE
 +  <Multi_key> <c> <apostrophe>            : "ç"   U0107 # LATIN SMALL LETTER C WITH ACUTE
 +
 +**Solução 3**\\ Em sistemas 64 bits edite os arquivos (se existirem - pois não achei isso em versões mais recentes):
 +/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache
 +/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache
 +  * Em sistemas 32 bits edite o arquivo:
 +/usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/immodules.cache
 +  * Altere as linhas onde tem cedilla colocando o idioma "en" no final, junto com os outros, separando com dois pontos ":"
 +  "cedilla" "Cedilla" "gtk20" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa:en"
 +
 +
 +====== Controle de versões com Subversion (svn) ======
 +
 +Por enquanto não vou cobrir aqui a instalação, apenas o uso.
 +
 +===== Criando um repositório =====
 +
 +**No servidor**\\ svnadmin create /<caminho pra raiz dos repos>/<novo repo>
 +
 +
 +===== checkout de um repositório =====
 +
 +O checkout (co) pode ser usado para iniciar o uso de um repositório ainda vazio ou continuar os trabalhos num repositório.
 +
 +**No cliente**\\
 +  *  svn co svn+ssh://<usuario>@<servidor>/<raiz dos repos>/<repo>
 +  *  svn co https://<usuario>@<servidor>/<raiz web dos repos>/<repo>
 +Para funcionar com HTTP ou HTTPS o servidor precisa ter sido configurado para tal. No momento dessa configuração é definida a "raiz web dos repos", que não precisa ser igual ao caminho no disco dessa raiz e normalmente não é.
 +
 +
 +===== commit - enviando arquivos para o repositório =====
 +
 +Nesse caso normalmente não é necessário especificar o protocolo (https, svn+ssh, ...) pois a cópia local já guarda em suas configurações o que foi usado.
 +**No cliente**\\
 +  *  svn ci -m "mensagem de commit" [arquivos ...]
 +Os nomes de arquivos podem ser omitidos e ficará implícito o diretório corrente ".", que será percorrido recursivamente para o envio das modificações.
 +
 +
 +===== outros comandos =====
 +
 +Com o comando
 +  svn help
 +você obtém a lista dos demais comandos disponíveis.
 +Com o comando "svn help <comando>" você obtém ajuda sobre um comando específico do svn. Por exemplo:
 + svn help co
dicas_unix_e_etc.1502216451.txt.gz · Última modificação: 2017/08/08 15:20 por cartola