sexta-feira, 26 de abril de 2013

SED em modo recursivo (vários arquivos)

Precisando alterar alguma string dentro de vários arquivos. Para isso usamos o SED mas ele sozinho altera apenas um arquivo.

Então vamos lá

find . -type f | xargs sed -i  's/string1/string2/g'

Lembrando de estar no diretório desejado.

string1 -> texto qyue já existente e será substituído
string2 -> o texto que substituirá string1

Fuiiiiiiiiii

quarta-feira, 24 de abril de 2013

LibreOffice (Recuperação de arquivo)

Bom,

às vezes por algum motivo o Libre Office fica perguntando para recuperar um certo arquivo que fez o auto backup. Existe a opção de remover isso mas podemos perder algo importante neste caso

Mais detalhes em: "https://help.libreoffice.org/Common/Saving_Documents_Automatically/pt-BR"

Mas também as vezes é algum "bug" do LO que fica com essa mensagem continuamente e não recupera nada

Para resolver isso renomeamos um arquivo (também disponível no Windows, mas o processo aqui foi feito no Ubuntu 12.04)

mv /home/USUARIO/.config/libreoffice/3/user/registrymodifications.xcu /home/USUARIO/.config/libreoffice/3/user/registrymodifications.old

Pronto

Lembre apenas de fazer isso com ele fechado e altere "USUARIO" para o nome de seu usuário

Fuiiiiiiiii

quinta-feira, 18 de abril de 2013

Shutdown vs Halt vs Poweroff vs Reboot


Quando administramos os sistemas operativos Linux ou Unix, em determinadas ações é necessário o desligamento ou reinicialização do sistema. Para isso os sistemas citados possuem comandos específicos que auxiliam nesta tarefa, como os comandos shutdownhaltpoweroff e reboot.

Mas quando utilizamos estes comando, a primeira impressão é que eles são iguais, como os comandos shutdown -h” e halt”.
Então, quando usa-los?
E o que eles realmente executam no sistema operacional?
Essas respostas é o que veremos a seguir nesta postagem.

Comando shutdown

O comando shutdown prepara o sistema operacional para ser desligado de forma segura, onde todos os usuários que estiverem conectados serão notificados do desligamento ou reinicialização. Caso novos usuário deseje efetuar sua entrada no sistema, está ação será bloqueada.
Synopsis:
1
shutdown [OPTION]...  TIME [MESSAGE]
Opções
  • -r Solicita que o sistema seja reiniciado após ter sido derrubado.
  • -h Solicita que o sistema ser interrompido ou desligado após ele ter sido derrubado, com a escolha como a que deixou até o sistema.
  • -H Solicita que o sistema seja interrompido após ter sido derrubado
  • -P Solicita que o sistema seja desligado após ele ter sido derrubado.
  • -c Cancela um shutdown em execução. Tempo não é especificado com esta opção, o primeiro argumento é a mensagem.
  • -k Only send out the warning messages and disable logins, do not actually bring the system down.
O comando ainda permite a passagem de um parametro especificando o tempo para a ação de desligamento ou reinicialização a ser executada. O valor numérico do exemplo abaixo é especificado em minutos, vejamos:
1
shutdown -h 1
Caso a palavra now” seja especificada no lugar do valor numérico expressando o “tempo”, o comando executará a ação imediatamente.
1
shutdown -h now
Também é possivel enviar uma mensagem aos usuários conectados ao sistema, como no exemplo abaixo:
1
shutdown -r 1 'O servidor será reinicializado em 60 segundos!'
Depois de tempo decorrido, shutdown envia uma solicitação para o init(8) daemon para trazer o sistema a baixo.

Comando halt, poweroff e reboot

Synopsis:
1
2
3
reboot [OPTION]...
halt [OPTION]...
poweroff [OPTION]...
Opções:
  • -f, – force: Não invocar o shutdown (8) e, em vez executa a ação real que você esperaria de nome.
  • -p, – poweroff: Instrui o comando halt para se comportar como poweroff.
  • -w, – wtmp: Não chama shutdown (8) ou reiniciar (2) chamada de sistema e em vez de apenas grava o registro de desligamento em / var / log / wtmp
  • - verbose: Saídas ligeiramente mais mensagens detalhadas quando reiniciar, útil para depurar problemas com o desligamento.
Os comandos halt, poweroff e reboot permitem ao administrador parar, desligar e reinicializar o sistema ativo imediatamente. Evite utilizar a opção -f, pois ela executa a ação sem verificar o termino de processos em execução no sistema operacional. Isto pode causar problemas em dados na memória.
Uma observção é que estes comando devem ser executados com o nivel de usuário root, ou com o comando sudo.
Comando halt:
1
halt
Comando poweroff:
1
poweroff
Comando reboot:
1
reboot
Quando escavamos o mundo Linux e Unix, descobrimos que os comandos halt, poweroff e reboot são comando de baixo nível que por causarem confusão e mal uso dos os usuários atuais deu origem ao comando shutdown. Estes comandos são executados quando o sistema esta em seu estado normal, ou seja com o runlevel diferente de init(0) ou init(6). Sua ação é executada desligando, parando ou reinicializando o sistema emitindo uma ordem ao kernel para o seu desligamento imediato.
Note que com estes comandos, o devido desligamento de processos em execução deve ser efetuado anteriomente a sua ação.
Por tanto utilize o comando shutdown para evitar problemas em seu sistema. Mas nada o impede de utilizar os comando halt, poweroff e reboot, bastando apenas ter certeza de que processos em execução foram encerrados.


terça-feira, 16 de abril de 2013

Vino - Resolvendo o problema de refresh (atualização) lento

Acessando via Remmina um ubuntu com o Vino configurado tive uma surpresa desagradável: " a tela não atualizava bem e outras horas travava"

Caçando na net achei esta solução e sim resolveu tudo

gsettings set org.gnome.Vino disable-xdamage true

Lembre de fazer isso como o usuário que esta rodando o vino e não como root

Fuiiiiiiii

quarta-feira, 10 de abril de 2013

Alterando a linguagem do Debian Squeeze

Pegando uma instalação do Debian Squeeze em inglês resolvi mudar o idioma para manter o padrão que uso

Lembrando que aqui estou falando do modo terminal sem interface gráfica

Rode o comando abaixo como root:

dpkg-reconfigure locales

Selecione a opção "pt_BR.UTF-8 UTF-8" e depois OK

Escolha "pt_BR.UTF-8" em Locale padrão e OK

Pronto


segunda-feira, 1 de abril de 2013

Exportar do MYSQL para CSV na linha de comando

Bom segue o comando abaixo que fará a consulta e retornará num arquivo csv separado por " (aspas duplas) e , (vírgula)


mysql -uusuario -psenha banco_de_dados -B -e "select * from \`tabela\`;" | sed 's/\t/","/g;s/^/"/;s/$/"/' > arquivo.csv

Substitua as palavras "usuário", "senha", "banco_de_dados" e "arquivo" pelas informações corretas de seu sistema

O resultado saíra no formato abaixo:

"id","username","group","password"
"1","tux","admin","5f4dcc3b5aa765d61d8327deb882cf99"
"2","tlugian","admin","5f4dcc3b5aa765d61d8327deb882cf99"
"3","saiyuki","admin","5f4dcc3b5aa765d61d8327deb882cf99"
"4","fred","staff","5f4dcc3b5aa765d61d8327deb882cf99"
"5","barney","staff","5f4dcc3b5aa765d61d8327deb882cf99"
"6","wilma","admin","5f4dcc3b5aa765d61d8327deb882cf99"

No comando MYSQL temos a opção "-uusuario" onde informamos a o usuario logo após a opção "-u" e o mesmo acontece com a senha "-psenha", após essas opções informamos o banco de dados onde faremos a consulta.

A opção -B delimitará os dados usando tabs e colocará cada resultado em uma nova linha.
A opção -e orá executar o comando e, aspas que no nosso caso fpo o select. Inclusive aqui você pode modifica-lo tambem usando a clausula WHERE e etc.

Depois filtramos pro comando sed e formatamos o arquivos


s/\t/","/g;s/^/"/     -> Substituirá todos os tabs por "," (virgula).

;s/$/"/    -> Coloca as aspas duplas " no começo da linha.

E por último direcionamos tudo para o arquivo.csv

Obs.: Fiz uma alteração removendo um comando do sed desnecessário.


Fonte: http://tlug.dnho.net/node/209