Como esconder (no Thunar e Nautilus) um diretório sem colocar um ponto em seu nome?

14

Normalmente, os programas Linux armazenam as configurações do usuário nos diretórios ~ /.*. Mas, infelizmente, alguns desenvolvedores (de alguns aplicativos que eu preciso) não seguem essa regra e não iniciam seus nomes de pastas de armazenamento de configurações com um ponto. Isso resulta em confusões de pastas nunca usadas pelo usuário (não a palavra certa, talvez, pois não há muitas, mas elas incomodam de qualquer maneira) um diretório inicial. Renomeá-los não é uma opção, pois os aplicativos não os encontrarão neste caso (e os criarão novamente).

Existe uma maneira de esconder uma pasta sem que nenhum ponto comece seu nome sendo exibido em navegadores comuns do sistema de arquivos (na verdade eu uso o Thunar of XFCE, juntamente com o Midnight Commander e o Krusader, mas também não saberia sobre o Nautilus ).

    
por Ivan 22.12.2010 / 03:18

3 respostas

18

Nautilus (Atualização: Isso também deve funcionar com o Thunar agora) esconderá qualquer arquivo ou pasta que esteja listado no arquivo .hidden localizado no mesmo diretório.

Existem duas maneiras de ocultar uma pasta no Nautilus:

Script Nautilus

  1. Salve o código a seguir em um novo arquivo em sua pasta pessoal. Nomeie-o como Hide .

    #!/usr/bin/env python
    
    import commands
    from os.path import join
    
    
    files = commands.getoutput("echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")
    cwd = commands.getoutput("echo $NAUTILUS_SCRIPT_CURRENT_URI")
    cwd = cwd[7:]
    
    for f in files.split(" /"):
    
        f = f.split("/")[-1]
    
        commands.getoutput("echo "+f+" >> "+join(cwd, ".hidden"))
    
  2. Execute o seguinte comando para instalar o script:

    cp Hide ~/.local/share/nautilus/scripts/ && chmod u+x ~/.local/share/nautilus/scripts/Hide
    
  3. No Nautilus, selecione um ou mais arquivos / pastas e clique com o botão direito. Selecione Ocultar no menu Scripts :

    Recarregue a localização atual ( F5 ) e os arquivos / pastas selecionados ficarão ocultos.

Linha de comando

Digamos que você queira ocultar uma pasta chamada "Greatest Hits de Rick Astley", basta executar o seguinte comando:

echo "Rick Astley's Greatest Hits" >> .hidden
    
por Isaiah 22.12.2010 / 03:31
1

Abra o synaptic e procure por "nautilus-hide" para instalá-lo. Logout e login. Agora clique com o botão direito em qualquer arquivo ou pasta. Agora você verá uma opção "Ocultar" no menu de contexto.

Não modificará o nome, mas ocultará a pasta.

    
por Curious Apprentice 07.05.2012 / 05:51
0

Eu modifiquei o bom script do Alvin para ser (espero) mais Pythonic (e potencialmente mais rápido se muitos arquivos forem adicionados, já que .hidden é aberto apenas uma vez):

#!/usr/bin/env python

import os

files = os.environ["NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"].split()
# According to https://help.ubuntu.com/community/NautilusScriptsHowto
# the list is newline-delimited, which is split()'s default separator

# No need for NAUTILUS_SCRIPT_CURRENT_URI
cwd = os.path.dirname(files[0])
# Assuming all selected files are in the same path, I cannot imagine why not

# Instead of relying on "echo ... >> ..." use Python's IO:
with open(os.path.join(cwd, ".hidden"), "a") as hidden:
    hidden.write("\n".join(
        [os.path.basename(f) for f in files.split()]))
    
por Tobias Kienzler 11.11.2014 / 13:29