Selecionando arquivos de diferentes pastas

5

É possível no nautilus selecionar um monte de arquivos de uma pasta, depois ir para uma pasta diferente e adicionar mais alguns arquivos à seleção?

    
por mwa1 18.05.2016 / 12:00

2 respostas

6

Não, infelizmente não é possível.

    
por dadexix86 18.05.2016 / 12:06
1

bafman começa

Esta é uma resposta em andamento dividida em duas postagens.

O bafman ( B orn A ganho F ile Homem ager) foi desenvolvido neste último fim de semana prolongado (abril 14-17, 2017). Ainda é um trabalho em andamento, mas satisfará o requisito de selecionar arquivos em vários subdiretórios.

Isso é ideal em situações em que você deseja copiar arquivos em um projeto sem fazer um backup completo do sistema. Existem outros aplicativos, como a marcação de todos os arquivos de configuração do sistema que você modificou em dezenas de diretórios diferentes.

Estou postando este WIP na esperança de gerar interesse e coletar sugestões para recursos adicionais enquanto eu termino o código bash. Sim, está tudo escrito em bash (para o choque de muitos talvez) e depende do YAD (Yet Another Dialog) para toda a GUI.

Criação inicial de dados

Quando você invoca o bafman pela primeira vez, esta tela aparece após alguns instantes:

Esta é a tela principal. Você pode clicar em qualquer cabeçalho de coluna para classificar em ordem crescente e decrescente. Você pode pegar o divisor de coluna e movê-lo para ajustar a largura da coluna.

A lista de diretórios é reduzida de & gt; 20.000 (o limite bafman) usando este comando:

tree --noreport -danifI "src*|dev|lib|media|mnt|proc|root|run|sys|tmp|tmpfs|var|usr" / > "$bafmanTemp"

Se você é um programador, pode querer ver todos os diretórios "src *" e remover isso do código.

Observe que as contagens e tamanhos dos arquivos são todos zero em nossa exibição. Isso é solucionado na próxima seção.

Update Dirs button - gera estatísticas de arquivos para todos os diretórios

Ao clicar no botão Update Dirs , você é recebido com este aviso inicial:

10.000 diretórios é uma situação extraordinária se, por exemplo, você adicionar o diretório /usr e /var à lista bafman. Em nosso exemplo, temos 2.365 diretórios e leva cerca de 5 minutos para verificar todos os arquivos neles.

Durante a verificação de todos os arquivos em todos os diretórios, esta tela de progresso é exibida:

Quando tudo estiver dito e feito, a tela principal é atualizada assim:

Mais uma vez, é importante notar que você pode clicar na coluna "Tamanho dos arquivos" para classificar em ordem crescente (menor no topo) e clicar novamente para ordem decrescente (diretórios com maiores tamanhos de arquivo no topo).

A pesquisa no nome do diretório é possível simplesmente digitando o diretório para o qual deseja avançar. Por exemplo, digite /etc/default e a tela rola para esse diretório.

Hide Dir button - remove o diretório da lista bafman

Eu notei que tenho um diretório chamado /cdrom2 que eu esqueci que criei durante o teste do diretório "falso" /cdrom (que você DEVE GUARDAR). Então vamos remover /cdrom2 da lista bafman clicando no botão Hide Dir :

O diretório /cdrom2 já foi removido da unidade, então os campos Modificado e Proprietário são exibidos como Excluídos . Estes e outros campos nesta tela são descritos na seção Editar comentários .

Para o momento, selecione o botão OK para ocultar o subdiretório e, em seguida, essa tela aparecerá:

É possível ocultar um diretório e manter todos os subdiretórios sob ele na lista bafman. Então, esses subdiretórios individuais podem ser ocultados ou mantidos individualmente.

Botão Edit comments - insira comentários para qualquer diretório.

Ao trabalhar com diretórios Linux / Ubuntu, você precisa se lembrar de muitos detalhes sobre eles para que você possa inserir alguns comentários importantes aqui.

Na tela principal, digite /etc/default e a tela rola para esse diretório. Clique duas vezes ou clique na Barra de espaço para selecionar o diretório e depois clique no botão Edit comments :

Comentários apropriados foram inseridos. Note que se você Hide o diretório no futuro, os comentários serão perdidos. Os outros campos da tela são gerados automaticamente sempre que você clicar no botão Enter comments e serão salvos na tela principal.

Mesmo que você não insira um comentário nessa tela, a contagem de diretórios gerará contagens como uma transação. (Mais sobre contagens de transação mais tarde).

Add Dir button - Adicionar diretório à lista bafman

Você pode adicionar qualquer diretório à lista bafman e solicitará também a inclusão automática de subdiretórios. Neste exemplo, adicionaremos o diretório /lib , que contém centenas de subdiretórios.

Quando você clica no botão Add Dir , esta tela aparece com seu diretório pessoal selecionado como padrão:

Como você provavelmente já suspeitou que meu nome real não é WinEunuchs2Unix como esta imagem revela.

  • Clique na seta suspensa do diretório
  • Selecione Other... na lista
  • Comece a digitar /lib/systemd/
  • Clique em Open

Após selecionar o diretório para adicionar, a tela reaparece e nós digitamos um comentário apropriado:

Clique em OK para adicionar o diretório e, em seguida, será solicitado que você inclua subdiretórios nele:

Para o nosso exemplo, clique em Yes .

  

Observação: Se você tentar adicionar o diretório /lib inteiro e todos os subdiretórios, poderá receber uma mensagem de erro "Retorno do botão Desconhecido"   código "e se você chamar bafman do terminal o seguinte erro   mensagem aparece:

line 575: /usr/bin/yad: Argument list too long
     

Se você estiver executando o bafman a partir do atalho da área de trabalho, verá esse erro   em código%. Lembre-se o bash tem limites sobre o tamanho dos arrays   pode ser quando passar para GUI Yad.

Depois de adicionar o novo diretório e subdiretórios, a tela principal reaparece. Comece a digitar /var/log/syslog e a tela rola para baixo nesta seção:

Aqui está uma observação importante: Ao adicionar um novo diretório, ele é anexado ao final da lista de bafman. Basta clicar no cabeçalho da coluna Nome do diretório para recorrer à lista em ordem alfabética.

Todas as estatísticas de contagens de arquivos e tamanhos de arquivo são zero. Se fosse apenas um único diretório, poderíamos simplesmente clicar no botão /lib/systemd e essas estatísticas são geradas para nós. Mas é mais fácil clicar no botão Edit comments e pegar um café.

Quando você insere um comentário ao adicionar um novo diretório, esse comentário é herdado por todos os subdiretórios abaixo dele (você deve optar por adicioná-los ao mesmo tempo).

Update Dirs button - Selecione os arquivos que serão usados pelo comando Executar

Este é o coração de bafman e infelizmente incompleto neste momento. A marcação de arquivos no diretório foi configurada, mas os designs precisam ser formulados para marcar arquivos em subdiretórios no diretório de seleção. Espero que a contribuição da comunidade ajude no design.

Vamos começar navegando até o diretório Tag files , selecionando-o com um clique duplo e clicando no botão /home/rick/.local/share/nautilus/scripts :

Se você é como eu, você investiu muito tempo escrevendo seus scripts (ou documentos), então marcá-los para cópia subsequente é uma boa ideia. Esta é uma pequena lista e queremos tudo, então vamos clicar no botão Tag files :

O padrão é somente arquivos regulares. É aqui que eu preciso de informações sobre o que fazer quando os diretórios são selecionados ...

Muito rapidamente para finalizar, clique no botão Tag All :

O padrão é desmarcar todos os tipos de arquivo.

Obrigado por ficar acordado e ansioso pela sua contribuição. A próxima resposta postará o código bash do WIP.

    
por WinEunuuchs2Unix 18.04.2017 / 04:03