O Hacklaviva foi um espaço de emancipação tecnológica nascido em Fevereiro de 2009 no Porto.

O espírito continua vivo: Guifi.net; Transparência Hackday; Viva Filmes

29/Maio: Feitiçarias na linha de comandos

Publicado: 28 de Maio de 2009 | Por: | Em: Actividades | 2 Comentários

Esta sexta-feira dia 29 vai haver uma oficina dedicada à linha de comando no Hacklaviva.

É a tua oportunidade de saber mais alguma coisa sobre esta janela onde se escrevem códigos esquisitos que produzem resultados quase que por magia.

Vais ficar a saber, por exemplo, que é mais rápido escrever

for img in *.jpg ; do convert $img -rotate 90 -scale 50% ${img/jpg/png} ; done

do que abrir cinquenta imagens no GIMP ou Photoshop, rodá-las, reduzi-las e gravar cada uma em formato png.

Também vão estar lá alguns extremistas que não largam a consola por nada, usam-na por exemplo para ler o correio, navegar na net e até para abrir documentos Word.

Mais alguns tópicos:
odt2txt, antiword, w3m, mutt, irc
music: mocp, freejay


# Para os curiosos, aqui estão duas formas alternativas de resolver o problema
# das imagens: Ambas chamam o convert para tratar a imagem, mas a forma
# como o fazem é que é diferente


# este uso o sed, que é um comando que faz manipulações de texto. O resultado
# são os comandos que depois são passados para uma shell para serem executados:
ls |sed 's/\(.*\)\.jpg/convert \1.jpg -rotate 90 -scale 50% \1.png/' | sh -x


# e este usa o xargs, que é um comando também muito útil...
ls *.jpg | xargs -ti sh -c 'convert {} -rotate 90 -scale 50% `basename {} jpg`png'


2 Comments on “29/Maio: Feitiçarias na linha de comandos”

  1. 1 higuita disse que 22:22 em 6 de Junho de 2009:

    bem, ja’ que estamos numa de cli a fazer a mesma coisa:

    find . -name “*.jpg” -exec convert {} -rotate 90 -scale 50% {}.png \;
    mas desta forma ficamos com imagem.jpg.png… para não complicar o find e mostar outro comando interessante, fazemos

    for ficheiro in $( find . -name “*.jpg.png”) ; do mv $ficheiro ${ficheiro/.jpg} ; done

    e pronto… as substituições nas variaveis são dependentes do bash, mas toda a gente usa bash, não!
    ;)

    higuita

  2. 2 nut disse que 18:04 em 14 de Agosto de 2009:

    :D
    apt-cache show surfraw
    ————–
    Surfraw – “Shell Users’ Revolutionary Front Rage Against the World Wide Web” (Front revolucionário dos usuários de shell em
    fúria contra a Rede Mundial de Computadores)

    Surfraw provê uma interface rápida de linha de comando unix para uma variedade de mecanismos de busca WWW populares e outros
    artefatos de poder. Ele recupera google, altavista, dejanews, freshmeat, research index, slashdot e muitos outros das terras
    pagãs dos formulários html infestadas de doenças e de falsos profetas, trazendo-os para essas maravilhas às quais eles
    pertencem, fundo na terra coração do unix, como Deus ama extensões para o shell.
    [..]capaz de velocidades de pesquisa que deixam os corrompidos idolatradores da GUI boquiabertos com medo e maravilhamento.