Posts

Como executar comandos git a partir de outro diretorio

Image
Caso você queira executar um comando do git estando em um diretório que não é um repositório git, basta definir o parâmetro "--git-dir" e definir a work tree(em qual ponto do repositório você quer trabalhar) com o parâmetro "--work-tree".  No exemplo abaixo, eu executo um "git status" no meu repositorio, estando em outro diretorio: git --git-dir=/home/Guilherme/workspace/remote-ejb-example/.git --work-tree=/home/Guilherme/workspace/remote-ejb-example/ status Segue a saida do comando:

Consultar sequence no PostgreSQL 9.2 >

Para realizar a consulta da sequence ligada a um campo na tabela deve-se fazer uso da seguinte função: select pg_get_serial_sequence('<schema>.<table_name>', '<column>'); Essa função recebe dois parâmetros, o primeiro é o nome da tabela e o segundo o campo a ser pesquisado, irá retornar o nome da sequence, caso tenha alguma ligada ao campo ou irá retornar null no caso de inexistência.

Maven dependency tree

Image
Para imprimir a arvore de dependências do seu projeto basta executar o comando abaixo e ele irá mostrar todas suas dependências mvn dependency:tree -Dverbose Output:

Erro ao conectar via ssh

Ao tentar conectar via ssh a um servidor, aconteceu o seguinte erro: λ ssh <host> Unable to negotiate with <host>: no matching host key type found. Their offer: ssh-dss O motivo disso, é que a partir da versão 7.0 do OpenSSH as chaves do tipo DSA(Digital Signature Algorithm) são desativadas por padrão, por serem fracas. Lembrando, o uso de chaves DSA é desaconsalhavel. Abaixo segue um workaround para conseguir conectar: echo Host <host> >> ~/.ssh/config echo HostKeyAlgorithms +ssh-dss >> ~/.ssh/config

Query DNS Nslookup (Windows e Linux)

O comando "nslookup" faz queries no DNS, para resolver um nome ou ip informado, retornando assim o DNS utilizado e as informações do domínio buscado. Exemplo nslookup facebook.com Resultado: gbotossi@kalil:~$ nslookup facebook.com Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: Name: facebook.com Address: 66.220.158.68 Informações Extras: Caso não seja informado o servidor DNS, será utilizado o que está definido na maquina(no meu caso o DNS do google) Se for do interesse o uso de outro Servidor DNS deve-se informar dois parâmetros, sendo o primeiro parâmetro informado é domínio ou ip a ser resolvido e o segundo parâmetro é o DNS a ser utilizado Exemplo: gbotossi@kalil:~$ nslookup 66.220.158.68 208.67.222.222 Resultado: C:\Users\Guilherme>nslookup 66.220.158.68 208.67.222.222 Server: resolver1.opendns.com Address: 208.67.222.222 Name: edge-star-mini-shv-07-frc3.facebook.com Address: 66.220.158.68

Converter Minutos do dia em Horario

Utilizando a classe TimeUnit podemos fazer a conversão dos minutos em hora, minuto e segundo. A constante MINUTES é utilizada para denominar que estamos trabalhando com minutos e os métodos toHours, toMinutes, toSeconds recebem a quantidade de minutos a ser convertida. Segue o exemplo de utilização Long minutesOfDay = Long.valueOf(10L); String format = "%02d:%02d:%02d"; Long hour = TimeUnit.MINUTES.toHours(minutesOfDay); Long minutes = TimeUnit.MINUTES.toMinutes(minutesOfDay) - TimeUnit.HOURS.toMinutes(hour); Long seconds = TimeUnit.MINUTES.toSeconds(minutesOfDay) - TimeUnit.MINUTES.toSeconds(minutes); String time = String.format(format,hour, minutes, seconds);

Split de uma string a cada N-caracteres

Considerando o codigo abaixo, o método split recebe uma regex. String str = "2018192515"; String[] arrStr = str.split("(?<=\\G.{2})"); System.out.println(Arrays.toString(arrStr)); O resultado será [20, 18, 19, 25, 15] A regex  consiste de : Operador Descrição () faz um grouping ?<= Positive Lookbehind \G RegEx boundary character . Ocorrência de qualquer caractere {2} 2 vezes a ocorrência do operador anterior RegEx boundary character : define o final da ultima String encontrada e faz a busca a partir desse ponto