Pequena “Introdução” a comandos linux.

Calma gente, não e so o buda que escreve não, nao esqueci de vocês não!

$: Existem facilidades ao uso da plataforma Mac Os, e Linux, como os dois são baseados em Unix, seus comandos são os mesmos, alguns sao muito bons, e irei fazer uma lista de usos dos mesmos para facilitar a vida de quem esta iniciando em um Ubuntu ou Mac os. Alguns comandos sao simples, apesar disso, ainda pouco utilizados.

SCP – Secure Copy
Uso Comum:
$: scp meuarquivo.txt usuario@computador_ou_ip: /pasta/arquivo\

Com recurso de modificação da porta:
$: scp minhapasta/ usuario@ip_ou_computador: /pasta/destino/ -p 92366

Unzip – Decompress file
uso comum:
$: unzip arquivo.zip

Uso com criação de pasta:
$: unzip -qd arquivo.zip

Mysql Dump – Dump Databases
Uso comum:
$: mysql -h localhost -u root -psenha minha-base > arquivo.sql

Uso comum para todas as bases:
$: mysql -h localhost -u root -psenha –all-databases > arquivo.sql
Nota: Note que o -p = senha, e sempre colado no -p mesmo. Sendo assim -psuasenha.

Cal – Simples Calendario no Shell
Uso comum:
$: cal

Retorno:

December 2009
Su Mo Tu We Th Fr Sa
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

Para obter dos ultimos 3 meses:
$: cal -3

Para obter os calendarios de algum mes de um ano anterior:
$: cal 10 2000

October 2000
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

Nota: Para outros formatos consulte: cal –help.

Find – Obtenha resultados rapidamente!
Consulta rapida na pasta para um arquivo:

$: find -name ‘meu_arquivo.htm’

Ou
Consulta geral para um arquivo:
$: find / -name ‘meu_arquivo.htm’

Nota: Isso pode ser bem demorado… Recomendo algo como indicar a pasta para otimizar o resultado da busca:
$: find /home/meuperfil -name ‘meu_arquivo.htm’ ;

Você tambem pode procurar por tamanho de arquivo:
$: find -name ‘*’ -size +1000k

Ou caso nao lembre o tipo de arquivo, somente parte do nome:
$: find -name ‘meu_arquivo*’

O retorno e algo como:

meu_arquivo.htm,
meu_arquivo.txt,
meu_arquivo.png …..

Bom, essa lista so tende a crescer, em breve, irei atualizando e informando que a mesma foi atualizada, ou pelo twitter ou em novos posts ;)

Caso queiram contribuir com seus comandos mais usados e praticados, para facilitar a vida, basta ir enviando nos comentarios e irei adicionando.

Uma forma “diferente” de explicar OOP

E ae gente, blz?
Então, antes de começar eu vou explicar daonde saiu a idéia desse post. Um belo dia de trabalho normal, entre uma tarefa em outra um amigo me chama no msn pra tirar dúvidas, tentei explicar o que ele precisa fazer pra resolver o problema dele e depois de algum tempo ele entendeu, ta até ai tudo blz, e quando o problema ja estava resolvido ele solta a seguinte frase:

“P#%#$, nunca entendi direito o que é método ou atributo nessas paradas de oo, é por isso que eu me enrolo tanto, me explica ae.”

Ouvindo isso eu pensei, como eu vou fazer pra essa anta esse meu amigo entender esse conceito de forma rápida?

Ele mesmo me respondeu sem querer com a seguinte mensagem: (sim, o assunto muda rápido mesmo)
“… Aew, tu viu aquela morena gostosa do BBB? C@#$@#$ ela é muito boa mesmo…”

Pronto, o jeito mais prático de explicar os conceitos de OO pra esse cara seria utilizando mulheres como exemplo, wtf? sim, sim, e acreditem funcionou muito bem os exemplos e a idéia me pareceu tão boa que valeu um post aqui.

História contada então vamos ao que interessa.

Vejamos a foto abaixo:

hitomi_tanaka_2

Essa coisinha bunita da foto acima é a Hitomi e ela vai ajudar a gente a aprender o que é o que em Orientação a Objetos. Então olhamos a foto e vemos? uma gostosa… deitada num sofá… então,… o sofá tem 4 pernas, 1 estofamento… calma, calma, to só brincando.

A primeira coisa que precisamos entender quando vamos programar orientado a objeto são os atributos, e que atributos amigo.

Pensando nisso teriamos a seguinte classe para a foto acima:

<?php
 
class HitomiTanaka
{
  //Atributos realmente importantes
  protected var $peitos = 'KING SIZE';
  protected var $bunda = 'Na medida';
 
  //Atributos importantes mas que passam batido na visão
  protected var $olhos = 'Castanhos'; //Se tiver errado me perdõe, não consigo vê-los tempo suficiente sem desviar a visao na foto acima
  protected var $cabelo = 'Castanho'; //idem ao anterior
  protected var $peso = '50kg'; //Não faço idéia, mas acho que ela não ia ficar triste com esse chute :P
  protected var $roupas = 'Vestidinho Roxo'; //Aqui o defaul poderia ser "nenhuma"
?>

Isso da pra ter uma noção do que são atributos numa classe certo?

Sabendo disso, vamos por a mente pervertida pra trabalhar e pensar nos métodos, que são nada mais nada menos que as ações, coisas que a classe faz.

Olhe novamente outra foto da hitomi, dessa vez mostrando um pouco mais os atributos…

pic.php

Olhando a foto acima, e depois de censurar um pouco os meus pensamentos, achei métodos que poderiam ser incluídos nesse post, estão na classe abaixo.

<?php
 
class HitomiTanaka
{
  //Atributos realmente importantes
  protected var $peitos = 'KING SIZE';
  protected var $bunda = 'Na medida';
 
  //Atributos importantes mas que passam batido na visão
  protected var $olhos = 'Castanhos'; //Se tiver errado me perdõe, não consigo vê-los tempo suficiente sem desviar a visao na foto acima
  protected var $cabelo = 'Castanho'; //idem ao anterior
  protected var $peso = '50kg'; //Não faço idéia, mas acho que ela não ia ficar triste com esse chute :P
  protected var $roupas = 'Vestidinho Roxo'; //Aqui o defaul poderia ser "nenhuma"
 
  //
  public function mostrar($parteDoCorpo) 
  {
    //Aqui ficaria toda a rotina de desabotoar ou abaixar o sutian...
  }    
 
  public function balancar() 
  {
    //Niiiiiice, Imaginem a única cena que presta do filme click...
  }    
 
  public function striptease() 
  {
    //Ahhhhhhhhh!!!!
  }    
 
  /*
   Os outros 239 métodos que eu pensei envolveriam 
   interações com a classe Eu e seriam classificados como NSFW
   por isso não foram incluídos.
  */  
}
 
?>

Então… serviu pra ter uma noção do que são métodos né? acho que sim… mas como exercício de fixação, deixo para os leitores a feliz tarefa de comentar métodos e atributos que poderiam ser incluídos na nossa classe.

E como sempre, dúvidas sugestões e qualquer outro puxão de orelha, comentários tão ai pra isso.