Usando o GnomeVFS para manipular arquivos

Enquanto os usuários KDE têm o KIO slaves para fácil acesso ao sistema e recurso de rede, os humildes usuários GNOME podem realizar feitos similares com o seu sistema virtual de arquivos, denominado GnomeVFS, que é uma extenção do sistema de arquivos físico de um disco. Usando o GnomeVFS, os usuários podem trabalhar com dados remotamente que podem vir de diferentes lugares, como de dentro de arquivos comprimidos em gzip.

O GnomeVFS é parte integrante do GNOME. Ele é composto de vários módulos que trabalham em segundo-plano e dão ao GnomeVFS sua funcionabilidade. Em distribuições Fedora e Ubuntu esses módulos estão listados sob o diretório /usr/lib/gnome-vfs-2.0/modules/. Alguns dos módulos comumente incluídos estão http:, ftp:, tar:, ssh:, fonts: e burn:. Você pode adicionar mais módulos via gerenciador de pacotes das distros. Por enquanto, no Ubuntu, o pacote libgnomevfs2-extra adiciona os módulos bzip2: e smb:.

Você pode usar o GnomeVFS dentro do gerenciados de arquivo Nautilus ou via linha de comando. Os módulos GnomeVFS usados mais comumente são http: e https:, que acessam dados armazenados em um servidor Web. Você também pode usar o ftp:// para acessar dados de um servidor FTP e o smb:// para acessar dados de um compartilhamento Samba.

Um módulo interessante do GnomeVFS é o burn://. Você pode usa-lo dentro de uma janela do Nautilus e arrastar e soltar arquivos para a janela para grava-los em um CD ou DVD, dependendo da mídia na sua máquina.

Mas a verdadeira graça do GnomeVFS vem do seu uso via linha de comando. O comando eog file:///tmp/stuff.tar#tar:bookmarks.png abrirá o arquivo bookmarks.png no visualizador de imagens do GNOME. O comando usa dois módulos do GnomeVFS. O módulos file:// especifica o local do arquivo (/tmp/stuff.tar). A parte do comando "#tar:bookmarks.png" diz ao GNOME que qualquer coisa antes disso é um arquivo tar, e ele deve fazer o que for preciso para mostrar o arquivo bookmarks.png sob ele. Você não tem que se preocupar em desempacotar o arquivo e limpar depois.

Da mesma forma que você pode ler arquivos de um arquivo comprimido sem descomprimi-lo antes. Se você tem um arquivo .tar.gz, você terá que combinar dois módulos do GnomeVFS para extrai-lo. Por exemplo, eog file:///tmp/stuff.tar.gz#gzip:#tar:forum.png irá tratar primeiramente do arquivo (/tmp/stuff.tar.gz) como um arquivo comprimido e descomprimi-lo, e então tratará do arquivo resultante (stuff.tar) como um arquivo tar e descomprimi-lo para exibir a imagem (forum.png).

O GnomeVFS também pode manipular arquivos bzip2 e também ler os arquivos sob diretórios. Em gedit file:///tmp/old-docs.tar.bz2#bzip2:#tar:020207/writeup.txt nós pedimos ao GNOME para exibir um arquivos de texto de um sub-diretório depois de extrai-lo de um arquivo bzip2.

Também existem algumas ferramentas do GnomeVFS projetadas especificamente para o uso em linha de comando, como gnomevfs-cat, gnomevfs-copy, gnomevfs-ls, gnomevfs-mkdir e gnomevfs-info. Essas ferramentas são versões "GnomeVFSadas" de ferramentas em linha de comando comuns e são semelhantes em funções, com uma vantagem: a habilidades de trabalhar em arquivos remotos.

Por exemplo, gnomevfs-cat http://www.example.net.net > /tmp/index.html realiza a mesma função de cópia que o comando cat faria, mas em uma arquivo localizado remotamente. Do mesmo modo, gnomevfs-ls smb://192.168.2.2/D/ exibe o conteúdo de um diretório Windows remoto na sua rede.

Usando o GnomeVFS, você também pode ver arquivos em Websites via FTP. O comando gnomevfs-ls ftp://username:password@ftp.example.net/public_html lista o conteúdo de um diretório remoto juntamente com o tipo, tamanho, e permissão dos arquivos, neste formato:

.               (Directory, x-directory/normal)        size 4096
.. (Directory, x-directory/normal) size 4096
.htaccess (Regular, application/octet-stream) size 413
.smileys (Directory, x-directory/normal) size 4096
WysiwygPro (Directory, x-directory/normal) size 4096
_private (Directory, x-directory/normal) size 4096
_vti_bin (Directory, x-directory/normal) size 4096
_vti_cnf (Directory, x-directory/normal) size 4096
_vti_inf.html (Regular, text/html) size 1754
_vti_log (Directory, x-directory/normal) size 4096
_vti_pvt (Directory, x-directory/normal) size 4096
_vti_txt (Directory, x-directory/normal) size 4096
contact.htm (Regular, text/html) size 2390
favicon.ico (Regular, image/x-ico) size 1406
images (Directory, x-directory/normal) size 4096
index.htm (Regular, text/html) size 2977

Você também pode enviar um arquivo para um site remoto via FTP usando o GnomeVFS. O comando gnomevfs-copy /tmp/moi.jpg ftp://username:password@ftp.example.net/public_html/images/ usa o gnmevfs-copy para enviar um arquivo local (/tmp/moi.jpg) para o local especificado (/public_html/images) no site. Você também pode usar ftp://username:password@ftp.example.net dentro do Nautilus e copiar e colar arquivo para o site.

Uma vez que ele foi enviado, você pode checar o aquivo usando o gnomevfs-info. O comando gnomevfs-info ftp://username:password@ftp.example.net/public_html/images/moi.jpg resulta na seguinte saída:

Name              : moi.jpg
Default app : eog.desktop
Size : 4321
Blocks : 9
I/O block size : 32768
Local : NO
SUID : NO
SGID : NO
Sticky : NO
Link count : 1
UID : 1000
GID : 1000
Access time : Tue Mar 8 00:00:00 2008
Modification time : Tue Mar 8 00:00:00 2008
Change time : Tue Mar 8 00:00:00 2008

Usar o GnomeVFS para ver arquivos remotos e arquivos em subpastas compactadas pode ser uma verdadeira economia de tempo.

Fonte: Mayank Sharma@Linux.com

 
Powered by FeedBurner Creative Commons License
Esta obra está licenciada sob uma Licença Creative Commons.