Tecnologia
Trechos de códigos, comandos & outras chatices
Códigos
Coisas que provavelmente vou precisar depois (ou não)
How to change the shared url on the ShareThis plugin
Now that the AddThis plugin will be terminated, it's time to switch to yet another sharing platfo...
Xdebug na linha de comando
Primeiro, inicie a depuração normalmente na IDE Depois, inclua os parâmetros abaixo no comando: ...
Mysql on duplicate key
Para não precisar verificar se o registro já existe:INSERT INTO tabela SET campo1 = 'valor1', cam...
Alterando a aparência do show processlist
Com esse comando: SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST WHERE USER = 'usuario' AND state ...
Limite de conexões no mysql
Só uns comandos aleatórios para ver se está na hora de aumentar o limite de conexões ao banco de ...
Executando métodos de webservice SOAP usando cURL
..e ativando o xdebug: curl -X POST http://webservices.localhost/webservice.php?XDEBUG_SESSION_S...
Mysql - encontrando registros com um ou mais caracteres maiúsculos
SELECT * FROM tabela WHERE campo REGEXP BINARY '[A-Z]';
Erro code 1271 - Illegal mix of collations for operation union
Esse erro acontece quando a gente tenta usar a cláusula UNION pra juntar duas consultas de tabela...
Importando vários arquivos SQL de uma vez só
Assim: for SQL in *.sql; do DB=${SQL/\.sql/}; echo importando $SQL; mysql -u login -psenha nomed...
Usando migrations no symfony para desfazer migração
Primeiro, precisa da versão da migração. Basta pegar a data e hora que estão no nome da classe. ...
Lendo arquivos de uma pasta com php
Sempre esqueço. $pasta = __DIR__.'/pasta/processar'; $iterator = new DirectoryIterator($past...
Jquery Ajax
Um exemplo, porque vivo esquecendo. $.ajax({ dataType: 'json' ,url: url ,data: form.s...
Copiando para a área de transferência com Javascript
Ou como simular ctrl+c. Novo método: navigator.clipboard.writeText("This is the text to be copi...
Avisar se o usuário esqueceu de gravar o formulário
Primeiro, criamos uma variável: var alguem_mexeu_no_meu_queijo = false; No evento change d...
Executando e acompanhando tarefas demoradas na linha de comando do MySQL
Primeiro, precisamos do comando sql que será executado. Execute o comando no seu programa prefer...
Listando arquivos modificados em um commit
Assim: git diff-tree --no-commit-id --name-only -r bd61ad98
Buscar ignorando acentos no Mysql
A query tem que ficar assim: campo LIKE _utf8 '%$variavel%' COLLATE utf8_unicode_ci Não esquece...
Ordenando elementos HTML com o Bootstrap
É só aplicar as classes order-1 até order-12 nos elementos, que devem estar dentro de um .row. O ...
Inserindo HTML em um iframe com jQuery
Às vezes precisamos gerar uma pré-visualização de um bloco de HTML, mas o CSS da página atual pod...
Máscara para telefones com 8 ou 9 dígitos
Esse é um exemplo de uso do plugin masked-input do jQuery para formatação de telefones com 8 ou 9...
Exportando tabelas para excel e acertando o formato dos campos
Como 'gerar' um arquivo excel com php, todo mundo já sabe: $arquivo = "export".date("dmY_His")."...
Utilizando jquery-ui tabs + jquery validation plugin
Quando o plugin encontra um elemento com erro, o elemento automaticamente ganha foco.Mas quando o...
Alguns comandos do MySQL
Medindo os tamanhos dos bancos: SELECTTABLE_NAME,SUM(data_length + index_length) / 1024 / 1024 A...
jQuery hasAttr
Um plugin simples para utilizar a função hasAttr com jQuery, que funciona do mesmo jeito que hasC...
Validando datas em pt-br com jQuery Validate
Assim: $.validator.addMethod( "date", function(value, element) { var ...
Acessando conteúdo do CKEDITOR
Assim: CKEDITOR.instances.IdDoElemento.getData() Lembrando que no lugar de IdDoElemento, vai, o...
Contar dias ou horas entre datas em Mysql
Para contar quantas horas existem entre duas datas: SELECT TIMEDIFF(STR_TO_DATE('19/01/1985 00:0...
jQuery On
$('.qualquerItemPai').on("click", ".algumItemFilho", function(){ //algumacoisa });
D.R no Mysql
ou criando relações entre tabelas ALTER TABLE tabela ADD CONSTRAINT nome_da_relacao FOREIGN KEY ...
Fazendo caso
ou usando SELECT CASE no MySQL: SELECT id, nome, descricao,CASE status WHEN 1 THEN 'Aprovado...
Executando um comando como Root via php
Assim: <?php $outPut = shell_exec("echo senha | sudo -S apt-get -y install openssh-server"); ...
Exportando um ou mais registros no MySql com mysqldump
Ás vezes a gente precisa exportar só um registro de uma tabela.Dá pra fazer assim: mysqldump -t...
Lendo arquivos de uma pasta com php
$pasta = __DIR__.'/pasta/processar'; $iterator = new DirectoryIterator($pasta); foreach ( $it...
Utilizando plugin jquery validation em formulário com abas
Quando o plugin encontra um elemento com erro, esse elemento automaticamente ganha foco.Mas quand...
Executando comandos no client do MySQL sem informar a senha
Primeiro, crie um arquivo com o seguinte padrão: [client]host=localhostuser=usuariopassword='sen...
Desativando chaves estrangeiras no Mysql
Às vezes a gente precisa excluir uma tabela que tem relacionamento com outras. SET FOREIGN_KEY_C...
Linux
Comandos, dicas e otras cositas más que uso de vez em quando
Copiar e mesclar duas pastas no terminal
Usando rsync: rsync -a /origem/ /destino/ No caso acima, vai copiar o conteúdo de origem para d...
dig dig dig dig
..ou brincando com dns: Verificando se uma entrada CNAME existe: dig subdominio.dominio.com cna...
Erro ao atualizar certificados no let's encrypt
Isso no servidor Debian. Se aparecer a mensagem:("bad handshake: Error([('SSL routines', 'tls_pr...
Comprimindo pastas
tar -zcvf archive-name.tar.gz directory-name extrair: tar -zxvf archive-name.tar.gz Se o forma...
Alterando dependências de um pacote deb
Descompactar deb: ar x nomedoarquivo.deb (serão criados três arquivos: debian-binary control....
Encontrando e substituindo em arquivos no shell
Procurar um determinado texto em vários arquivos: find . -type f -exec grep -l 'gerar_boletos' {...
Removendo um ip do Fail2ban
1) Listar os ips bloqueados: iptables -L -n 2) Listar os nomes das regras do fail2ban: fail2ba...
Mini-curso mega-rápido de Torrents e Piratebay
Aqui vai um tutorial resumido de como baixar filmes no piratebay. Primeiro, precisa de um client...
Operações com arquivos no shell
Excluindo arquivos com mais de 90 dias: find pasta -mtime +90 -type f -exec rm -f {} \; (altere...
Exibir qual processo está usando uma determinada porta
Assim: lsof -w -n -i tcp:9000
Agendando desligamento no Debian
Editar o arquivo /etc/rc.local: #!/bin/sh -e # # rc.local # # This script is executed at t...
Vídeos de Timelapse
Itens necessários: Celular para capturar as imagens; Algum programa para tirar fotos de minut...
Criando e distribuindo um torrent usando o Transmission
Usando o terminal, é óbvio. Primeiro, instale o transmission. Junto com ele, vai vir o daemon e ...
Convertendo de MP4 para GIF no Debian
Com o ffmpeg: ffmpeg -i video.mp4 imagem.gif Provavelmente também funciona com outros formatos ...
Montando drives usb na linha de comando
Listando os dispositivos e partições encontrados: sudo fdisk -l Montando a partição do disposit...
Executando um comando repetidas vezes no terminal
Assim: while sleep TEMPO; do COMANDO; done Exemplo: exibir a data, a cada segundo: while sleep...
Acesso ssh via tor
Primeiro, instalamos tor e o connect-proxy: sudo apt install tor connect-proxy Depois, configur...
Removendo arquivos com interrogação (?) no nome
Às vezes aparecem uns arquivos chamados ?.pub, ou apenas ? na pasta home. Na verdade, esse não é...
Trabalhando com arquivos no terminal
Listando: ls -l Ordenando pela data: ls -l --sort=time Ordenando inversamente: ls -l --sort=...
Virtualbox - faltando headers
Ao iniciar o Virtualbox, aparece uma mensagem dizendo para executar o /sbin/vboxconfig como root....
Mexendo com arquivos wbfs para usar no Nintendo Wii
Extraindo de rar para iso: unrar x arquivo.part01.rar Convertendo de ISO, WDF, WIA, CISO, WBFS,...
Gravando um arquivo ISO em um pendrive
Usando o comando dd: sudo dd if=arquivo.iso of=/dev/sdc status=progress Só que isso nem sempre ...
Erro NO_PUBKEY no Ubuntu/Debian
Mensagem de erro: The following signatures couldn't be verified because the public key is not av...
Backup com rsync
rsync -azP --bwlimit=5000 --exclude=git user@host:/origem destino/ Quando esquecer para que serv...
Listando portas X serviços
sudo lsof -iTCP -sTCP:LISTEN -P
Um pouco de windows
Alguns comandos úteis (ou não) para o windows 10. Girar a tela: Ctrl+Alt+Seta para os lados Us...
Baixando arquivos recursivamente via FTP
Porque nem sempre dá pra usar o sftp. wget -v -r -t 1 --include-directories=public_html,public,h...
nohup
Para executar um comando e sair sem esperar o retorno. Pode parecer falta de educação deixar o c...
Renomeando arquivos sequencialmente
Pega vários arquivos chamados "parte1", "parte2" etc. e renomeia para 0001, 0002 e assim por dian...
Mexendo com o Swap
sudo swapon --show //consultando a utilização do swapsudo swapoff -a //desligando swapsudo swapon...
DDNS com a Digital Ocean
Como o Dyndns agora é pago, o jeito é usar alguma outra solução de dns dinâmico, de preferência g...
Atualizando o Debian/Ubuntu
Comando pra atualizar o Ubuntu ou Debian. Eu sempre esqueço... sudo apt update -y && sudo apt u...
Criando link simbólico para uma pasta
Assim: ln -s /var/log/apache2/ ~/logs O detalhe é que a pasta ~/logs não deve existir na hor...
Trocando o editor do crontab para o nano
Só vale para a sessão atual do ssh, mas já ajuda: env EDITOR=nano crontab -e
Configurando o Percona Monitoring and Management usando Docker
As instruções são um pouco confusas, então achei melhor criar um guia. Requisitos: 1) Uma máqui...
Habilitando APM no log do Nginx
APM é um modo de medir a performance de um sistema. Por padrão, o log do nginx mostra apenas a h...
Gerando chaves ssh
Eu sempre esqueço. ssh-keygen -t rsa Ler o conteúdo do arquivo: cat ~/.ssh/id_rsa.pub Depois ...
Docker
Vários comandos do curso de Docker do senai: acessar o terminal de um container que já está roda...
Usando ffmpeg
Para comprimir um vídeo: ffmpeg -i input.mp4 -crf 28 output.mp4 Esse outro comando especifica o...
Bloqueando ip no iptables
Bloqueando uma faixa de ip: iptables -A INPUT -s 35.203.210.0/24 -j DROP Bloqueando apenas um e...