Ocultar arquivos pela extensão no nautilus

O nautilus permite ocultar arquivos arbitrariamente. Basta criar um arquivo chamado .hidden contendo os nomes completos dos arquivos que se pretende ocultar, um por linha, na pasta onde estão salvos.

Assim, suponhamos que você tenha uma pasta chamada MEUPROJETO dentro da qual você quer ocultar o arquivo main.pyc. Basta criar um arquivo chamado .hidden dentro da pasta MEUPROJETO e nele escrever "main.pyc".

O arquivo .hidden, infelizmente, não aceita caracteres coringa. Por isso preparei um script que cria automaticamente o arquivo .hidden para ocultar arquivos com a extensão .pyc. Acontece que o nautilus disponibiliza para execução por meio do menu de contexto (botão direito do mouse) todos os arquivos executáveis que estejam na pasta ~/.gnome2/nautilus-scripts/. Assim basta criar um arquivo com qualquer nome, salvar na pasta desejada e colar o código abaixo no arquivo.

A partir daí você poderá clicar com o botão direito, selecionar "Scripts", em seguida o nome do script desejado e pronto. (É preciso recarregar a pasta - F5 - para que os arquivos sejam ocultados)
Se você quiser ocultar outra extensão, basta trocar o valor da variável "extension_to_hide".

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import pygtk
pygtk.require('2.0')
import gtk
import os
 
extension_to_hide = '.pyc'
 
 
def alert(msg):
    """Show a dialog with a simple message."""
    dialog = gtk.MessageDialog()
    dialog.set_markup(msg)
    dialog.run()
 
def main():
    curdir = os.environ.get('NAUTILUS_SCRIPT_CURRENT_URI', os.curdir)[7:]
    files = os.listdir(curdir)
    to_hide = ''
    for i in files:
        if (i[-4:]==extension_to_hide):
            to_hide+= i+'\n'
 
    if to_hide != '':
        hidden = open(curdir+'/.hidden', 'w')
        hidden.write(to_hide)
        alert("Foram ocultados os arquivos seguintes: \n"+to_hide)
    else:
        alert("Não há itens a ocultar.")
 
 
if __name__ == "__main__":
    main()

Comentar

Filtered HTML

  • Endereços de páginas de internet e emails viram links automaticamente.
  • Tags HTML permitidas: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Quebras de linhas e parágrafos são feitos automaticamente.

Plain text

  • Nenhuma tag HTML permitida.
  • Endereços de páginas de internet e emails viram links automaticamente.
  • Quebras de linhas e parágrafos são feitos automaticamente.