All work and no play makes Jack a dull boy

quarta-feira, 28 de dezembro de 2016

Copiar último comando no terminal

Pra manter o estilo, vamos direto ao ponto

Coloque o seguinte alias no seu ~/.bashrc ou ~/.bash_profile (ou onde quer que você aloca essas coisas):
alias copyLastCmd='fc -ln -1 | awk '{$1=$1}1' | pbcopy '
=]
Fonte

domingo, 16 de outubro de 2016

criar e enviar patch do git

Como fazer para criar e enviar um patch do git? Por que você faria isso? Ora pense que talvez você precie enviar por email ou, por exemplo, como aplicação num ticket de um projeto open source como o Django.
Vou demonstrar aqui como fazer a partir de um diff.

git diff <commit_inicial> <commit_final> > arquivo_do_patch
Caso você apenas queira aplicar baseado no diff referente ao último commit, faça: (digamos que o hash desse commit seja 5fbd9)

git diff 5fbd9 > arquivo_do_patch
Caso queira aplicar o patch em algum lugar:
git apply arquivo_do_patch
Fácil, né!?

terça-feira, 16 de agosto de 2016

Colar sem auto indentação no vi / vim

Se você não é usuário tão frequente assim do vi / vim, muito provavelmente já passou pela dificuldade de colar trecos de código que contenham qualquer indentação.

Se na origem é algo como
asd {
   qwe
}

Quando você cola vira:
asd {
        qwe
              }

A solução é bem fácil e prática. Antes de colar o texto, faça:
:set paste
Isso habilitará o modo paste. Cole. Pra desabilitar o modo paste, faça:
:set nopaste

=]

Fonte

segunda-feira, 27 de junho de 2016

Listar migrations pedentes no Django

Caso você queira ver a lista de migratios (migrações) pendentes para cada app listada no seu projeto com Django, use:

python manage.py migrate --list | grep "\[ \]\|^[a-z]" | grep "[ ]" -B 1
ou para Django 1.8 em diante:

python manage.py showmigrations | grep "\[ \]\|^[a-z]" | grep "[ ]" -B 1

=]

Fonte

quinta-feira, 23 de junho de 2016

git autocomplete no terminal do mac

Se você tem interesse em habilitar o autocomplete do git no bash do seu Mac OS, eis os passos que você pode tomar:
curl https://raw.githubusercontent.com/git/git/master/contrib/completion/git-completion.bash -o ~/.git-completion.bash

Depois do download, altere seu arquivo ~/.bash_profile inserindo:
if [ -f ~/.git-completion.bash ]; then
  . ~/.git-completion.bash
fi

Como sempre, em toda alteração no bash_profile, execute e seja feliz:
source ~/.bash_profile

=]

quarta-feira, 24 de fevereiro de 2016

qual número do dia do ano

E se você quiser saber, no ano em que estamos, qual o número do dia.

from datetime import datetime
dia_do_ano = datetime.now().timetuple().tm_yday

bacana, ne?

terça-feira, 23 de fevereiro de 2016

docker: deletar container com status exited

Fica aqui a dica simples para você ter como alias no seu bash.

docker rm -v `docker ps -a -q -f status=exited`

Esse comando apagar container que esteja quieto ( "-q") e com status "exited".

Muito últil, por exemplo, em casos que você esteja com pouco espaço disponível.

=]