Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto

Publicado por Sidnei Serra em 25/03/2026

[ Hits: 56 ]

Blog: https://www.youtube.com/@alquimistaTI

 


Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto



Aqui vou mostrar como criar as opções de Copiar para e Mover para no menu de contexto do mouse, que existe no Nautilus e no Dolphin e que também deveria ter no Thunar.

Copiar para:
Abra o terminal e crie o arquivo:

sudo nano /usr/local/bin/thunar-copiar-para.sh

Coloque dentro:

#!/bin/bash

# Escolher destino
destino=$(zenity --file-selection --directory --title="Escolha a pasta de destino")
[ -z "$destino" ] && exit 0

# Perguntar sobre sobrescrever
zenity --question --text="Deseja sobrescrever arquivos existentes?"
sobrescrever=$?

# Monta opção do rsync
if [ $sobrescrever -eq 0 ]; then
    OPTS="--ignore-existing"
else
    OPTS=""
fi

# Lista total de arquivos para progresso mais preciso
total=$(printf "%s\n" "$@" | wc -l)
count=0

(
for item in "$@"; do
    count=$((count+1))

    echo "# Copiando: $(basename "$item") ($count de $total)"

    rsync -a --info=progress2 $OPTS "$item" "$destino" 2>/dev/null

    echo $((count * 100 / total))
done
) | zenity --progress \
           --title="Copiando arquivos" \
           --percentage=0 \
           --auto-close \
           --width=400

zenity --info --text="Cópia concluída!"

Salve com CTRL+O e feche com CTRL+X. Depois:

sudo chmod +x /usr/local/bin/thunar-copiar-para.sh

Mover para:
Abra o terminal e crie o arquivo:

sudo nano /usr/local/bin/thunar-mover-para.sh

Cole dentro:

#!/bin/bash

destino=$(zenity --file-selection --directory --title="Escolha a pasta de destino")
[ -z "$destino" ] && exit 0

zenity --question --text="Deseja sobrescrever arquivos existentes?"
sobrescrever=$?

if [ $sobrescrever -eq 0 ]; then
    OPTS="--ignore-existing"
else
    OPTS=""
fi

total=$(printf "%s\n" "$@" | wc -l)
count=0

(
for item in "$@"; do
    count=$((count+1))

    echo "# Movendo: $(basename "$item") ($count de $total)"

    # Copia primeiro
    rsync -a $OPTS "$item" "$destino"

    # Se deu certo, remove origem
    if [ $? -eq 0 ]; then
        rm -rf "$item"
    else
        echo "# Erro ao mover: $(basename "$item")"
    fi

    echo $((count * 100 / total))
done
) | zenity --progress \
           --title="Movendo arquivos" \
           --percentage=0 \
           --auto-close \
           --width=400

zenity --info --text="Movimentação concluída!"

Salve com CTRL+O e feche com CTRL+X. Depois:

sudo chmod +x /usr/local/bin/thunar-mover-para.sh

Abra o Thunar e vá em Editar/Configurar Ações Personalizadas. Na janela que aparecer, clique em + e complete conforme abaixo.

Copiar para:
  • Nome: Copiar para...
  • Descrição: Ação de copiar pastas e arquivos para determinada pasta ou lugar
  • Comando: /usr/local/bin/thunar-copiar-para.sh %F

Linux: Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Na aba Condições Para Aparecer, marque tudo.

Linux: Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Mover para:
Crie outra entrada agora como Mover para... e repita os procedimentos, mudando a linha de comando (e a descrição) para:

sudo nano /usr/local/bin/thunar-mover-para.sh

OK em tudo e fecha as janelas. Para usar o menu de contexto, abra o Thunar e escolha um ou mais arquivos e pastas (podem ser misturados), escolha a opção Copiar para... ou Mover para... e selecione a pasta ou local de destino.

Linux: Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
E aguarde a cópia/movimentação do que foi selecionado. Há uma barra de progresso por item e pergunta se é para sobrescrever se algo já existir.

Linux: Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Mais simples do que ganhar da "selessão barasileira de futibóu", hehehe...

Outras dicas deste autor

Otimização de memória para máquinas modestas

Adicionando o repositório backports no Debian 13 Trixie

Hardware antigo no Arch Linux e outras distribuições

Usando o ble.sh (Bash Line Editor) no lugar do bash completion

Consertando o áudio com estalos e interrupções no Pipewire

Leitura recomendada

Placa de rede wireless 3dsp do notebook Microboard Ultimate Black (MUB) - Ubuntu 10.04 Lucid Lynx

Configurando o scroll do mouse PS2 no Slackware 12.1

Crie o seu próprio modo de vídeo (modeline)

Escolhendo seu ambiente gráfico padrão

xorg.conf no Fedora

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts