Executando um comando para cada linha de um arquivo com bash

Linux, Programação 1 Comment

Hoje precisei gerar o diff do svn de alguns arquivos cujo nomes estavam armazenados dentro de um arquivo.

Para gerar o diff no svn de cada um desses arquivos basta fazer o seguinte:

cat arquivos.txt | xargs -I {} svn diff -r 39177:HEAD https://svn/projeto{} > diff.txt

Onde o arquivo arquivos.txt contém o nome dos arquivos em cada linha, e o diff.txt será o diff de todos esses arquivos.

Excluindo arquivos não versionados no SVN

Linux, Programação No Comments

Para excluir arquivos não versionados no SVN você pode utilizar o seguinte comando:

svn status --no-ignore | grep '^\?' | sed 's/^\?      //'  | xargs -Ixx rm -rf xx

A primeira parte desse comando lista todos os arquivos alterados no SVN (modificados, adicionados, excluídos e não versionados), a segunda parte do comando filtra as linhas que começam com “?” (arquivos não versionados).

A terceira parte elimina o “?” e os espaços do começo das linhas e a quarta parte exclui arquivo por arquivo retornado pelos comandos anteriores.

Este texto foi adaptado do link http://www.guyrutenberg.com/2008/01/18/delete-unversioned-files-under-svn/

Upgrade do Ubuntu 10.04 para 10.10: An unresolvable problem occurred while calculating the upgrade

Linux, Ubuntu No Comments

Essa semana atualizei o ubuntu que estava na minha máquina da versão 8.04 até a 10.10.

Para fazer esse upgrade tive que atualizar versão por versão, nada que fosse muito difícil já que o programa de atualização faz tudo automaticamente.

Ao tentar migrar da versão 10.04 para a versão 10.10 apareceu o seguinte erro:

Could not determine the upgrade
An unresolvable problem occurred while calculating the upgrade:
E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
This can be caused by:
  * Upgrading to a pre-release version of Ubuntu
  * Running the current pre-release version of Ubuntu
  * Unofficial software packages not provided by Ubuntu

Após algumas pesquisas na internet a solução foi remover o pacote xserver-xorg-video-nouveau através do comando:

apt-get --purge remove xserver-xorg-video-nouveau

Fontes:
http://ubuntuforums.org/showthread.php?t=1664249
https://bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/614993

Upgrade para o Ubuntu 9.10

Ubuntu No Comments

Hoje migrei o Ubuntu da versão 9.04 para 9.10.

Tive apenas um único problema que o Firefox ficou com fontes estranhas no menu. Para resolver este problema basta fazer o seguinte:

sudo rm /etc/fonts/conf.d/10-hinting-slight.conf
sudo ln -s /etc/fonts/conf.avail/10-hinting-full.conf /etc/fonts/conf.d/

A correção acima foi retirada de http://ubuntu-virginia.ubuntuforums.org/showthread.php?t=1305969.

Uma melhoria que fiz foi utilizar a nova versão do amsn, para isto basta adicionar o seguinte repositório no ubuntu (http://www.ubuntu-inside.me/2009/05/amsn-daily-repository-for-ubuntu-jaunty.html):

deb http://ppa.launchpad.net/amsn-daily/ppa/ubuntu karmic main

De resto, foi tudo tranquilo.

Como montar arquivos bin / cue no Linux

Linux, Ubuntu No Comments

Um dos jeitos para montar arquivos bin / cue no Linux é primeiro convertendo-os para o formato iso. Isto pode ser feito da seguinte maneira:

  • Instale o programa bchunk
    sudo apt-get install bchunk
  • Converta o bin e cue para iso
    bchunk arquivo.bin arquivo.cue arquivo
  • Monte o iso
    sudo mount -o loop -t iso9660 arquivo.iso /mnt/tmp

Referência: http://goinggnu.wordpress.com/2007/05/08/howto-mount-bincue-files-in-linux/

Ubuntu + Kodak C743

Linux, Ubuntu No Comments

Para utilizar a câmera digital Kodak EasyShare C743, basta criar o arquivo “/etc/udev/rules.d/KodakC743.rules” com o seguinte conteúdo:

ACTION=="add", SYSFS{idVendor}=="Eastman Kodak Company", SYSFS{idProduct}=="KODAK EasyShare C743 Zoom Digital Camera", MODE="0660", GROUP="plugdev"

E rodar o seguinte comando: “sudo /etc/init.d/udev restart”

Para saber qual é o idVendor e o idProduct basta executar: “for dev in `ls /sys/bus/usb/devices`; do udevinfo -ap /sys/bus/usb/devices/$dev; done”

Retirado de:
http://linuxnet.blogspot.com/2007/03/kodak-c743-no-ubuntu-610.html
http://ubuntuforums.org/showthread.php?t=286730

Ubuntu + Nokia 6235

Ubuntu No Comments

Para conectar o nokia 6235 no ubuntu, basta instalar o pacote obexfs e colocar no arquivo “/etc/fstab” a seguinte linha “obexfs#-u0      /media/fuse     fuse    user,fsname=obexfs#-u0  0       0″.

Após conectar o celular basta digitar no console:

“sudo mount -a”

Redirado de: http://dev.zuckschwerdt.org/openobex/wiki/ObexFs

Ubuntu + Alsa + Flash = Device or resource busy

Ubuntu No Comments

Após atualizar o ubuntu para 8.04 no trabalho, não estava mais com sons simultâneos com o flash e o alsa.

Quando tentava fazer: “aplay /usr/share/sounds/startup.wav” recebia o seguinte erro:

ALSA lib pcm_dmix.c:874:(snd_pcm_dmix_open) unable to open slave
aplay: main:546: audio open error: Device or resource busy

Para arrumar isto basta criar o arquivo “/etc/asound.conf”, com o seguinte conteúdo:

pcm.!default {
    type pulse
}
ctl.!default {
    type pulse
}

E adicionar o seguinte pacote no ubuntu: libasound2-plugins.

Archlinux HP Pavilion dv9000 – Suspend e Hibernate

ArchLinux, Linux, Megadeth, Programas, Shows, Uncategorized No Comments

Como mencionado no último post, não estava conseguindo fazer meu notebook hibernar ou suspender no modo gráfico no Archlinux. Após uma simples pesquisa no google encontrei a solução: bastou colocar o meu usuário no grupo “power”.

Instalação do ArchLinux no HP Pavilion dv9000

ArchLinux No Comments

No último final de semana resolvi remover o ubuntu do meu notebook e instalar o archlinux. A instalação foi feita totalmente através de wireless (utilizando o post anterior para a autenticação).

Não tive problemas durante a instalação, e o que eu fiz está muito bem documentado no wiki do archlinux:
http://wiki.archlinux.org/index.php/Beginners_Guide

O Gnome foi instalado, bem como os pacotes cleartype, que adicionam melhorias na renderização das fontes:
http://wiki.archlinux.org/index.php/Fonts

O único problema que tive até o momento foi que não consigo suspender ou hibernar o notebook pelo modo gráfico, mas executando o comando manualmente funciona perfeitamente. Quando descobrir a solução deste problema, eu escrevo um post!

« Previous Entries