Você não está autenticado.

Anúncio

Arch Linux Brasil está precisando de sua colaboração para realizar o pagamento do domínio e do host, para colaborar, realizar doações via paypal.

Para mais informações: contato at archlinux-br.org.

#1 04/04/2015 01:20:41

swatquest
Moderador
Registrado: 05/10/2010
Mensagens: 1.883

Ações Personalizadas do Thunar

Modificado 31/07/2015

* Renomear legendas
  Padrão de arquivo:*.avi;*.mp4;*.crdownload;*.srt;*.sub

A Ações personalizadas do thunar facilita bastante alguns processos.
Este tópico foi criado para o pessoal conhecer ou compartilhar suas ações personalizadas.

Segue alguns links com várias ações:

Caso queira usar um formato para adicionar as ações no tópico

[h][color=blue]Texto de cabeçalho[/color][/h]
[b]Nome:[/b]
[b]Descrição:[/b]
[b]Comando:[/b]
[b]Padrão de arquivo:[/b]*
[b]Seleção[/b]:
[list][*]Diretórios[/*]
[*]Arquivos de áudio[/*]
[*]Arquivos de imagem[/*]
[*]Arquivos de texto[/*]
[*]Arquivos de vídeo[/*]
[*]Outros arquivos[/*][/list]
[b]Programas nesessários[/b]:

Segue as ações que estou utilizando no momento

Abrir terminal como root

Nome:Abrir terminal como root aqui
Descrição:Abre terminal com permissão root no diretório selecionado
Comando:gksudo "xfce4-terminal --default-working-directory=%f"
Padrão de arquivo:*
Seleção:

  • Diretórios

Programas nesessários:gksu

Abrir thunar como root

Nome:Abrir pasta como root aqui
Descrição:Abre com o thunar a pasta selecionada
Comando:gksudo thunar %f
Padrão de arquivo:*
Seleção:

  • Diretórios

Programas nesessários:gksu

Excluir como root

Nome:Excluir como root
Descrição:Apaga permanentemente com permissão root
Comando:zenity --question --text="Você quer apagar permanentemente %N?" && gksudo "rm -rf  %F"
Padrão de arquivo:*
Seleção:

  • Diretórios

  • Arquivos de áudio

  • Arquivos de imagem

  • Arquivos de texto

  • Arquivos de vídeo

  • Outros arquivos

Programas nesessários:gksu e zenity

Colar como root

Nome:Colar como root
Descrição:Cola os arquivos com permissão root
Comando:gksudo "cp -r '$(xclip -o -selection clipboard)' %F"
Padrão de arquivo:*
Seleção:

  • Diretórios

Programas nesessários:gksu e xclip

Comparar arquivos

Nome:Comparar arquivos
Descrição:Compara arquivos textos
Comando:meld %F
Padrão de arquivo:*
Seleção:

  • Arquivos de texto

Programas nesessários:meld

Converter imagem para outro tipo de formato

Nome:Converter Imagem
Descrição:Converte a imagem para um outro tipo de formato
Comando:convert-image.sh %N
Padrão de arquivo:*
Seleção:

  • Arquivos de imagem

Programas nesessários:zenit e imagemagick

Mova o script para /usr/local/bin/
Salvar como: convert-image.sh
Dê a permissão de execução chmod +x convert-image.sh

#! /bin/sh                                                      

# Increment and count the number of files passed to the script
# for later use in the progress dialog box
n=1

# Ask for the destination graphic image format to change to
# Next line is entered all on one line
EXT=`zenity --title="Converter Imagem" --entry --text="Por favor,
insira o formato da imagem para converter (ex. PNG, JPG, TIFF, etc...)"`

  if [ $? == 1 ]; then

     exit
  fi

# Make sure the file extension is in lowercase text
declare -l EXT
EXT=$EXT

# Ask for the quality level of the copied images
# Next line is entered all on one line
QUAL=`zenity --title="Por favor, insira a qualidade" --entry --text="100= Qualidade Total, 75 = 75% de Qualidade, 50 = 50% de Qualidade"`

  if [ $? == 1 ]; then

     exit
  fi

# If the destination image format is PNG, set background to none
# (transparent) and set the quality levels, which differ from JPG
if [ $EXT == "png" ];
  then
     BACKGROUND="-background none"
     QUALITY=$(($QUAL / 10))
  else
     BACKGROUND="-background white"
     QUALITY="$QUAL"
fi

# Generate the new directory name, and set it to uppercase text
NEW_DIR="./"$EXT"-"$(date +"%d%m%y-%H%M%S")
declare -u NEW_DIR
NEW_DIR=$NEW_DIR
mkdir $NEW_DIR

# Pause for one second, just to be sure that everything that
# needs to be done has been done
sleep 1

# Cycle through the selected files, performing the conversion
# one file at a time
for file in [email protected]; do
    if [ ! -e $file ]; then
       continue
    fi

     # Get just the filename, without the original file extension
    name=$( echo $file | cut -f1 -d.)

     # Convert the file and write it out to the destination file
     # Next line is entered all on one line
    convert -quality $QUALITY $BACKGROUND $file $NEW_DIR/${name}.$EXT

     # Set up the information to display in the progress dialog box
    echo $(($n * 100 / $#))
    echo "# Processando arquivo: $file"
    let "n = n+1"

# Next line is entered all on one line
done | (zenity  --progress --title "Convertendo para "$EXT"..." --percentage=0 --auto-close --auto-kill)

exit 0
Editar como root

Nome:Editar como root
Descrição:Edita com o programa mousepad com permissão root
Comando:gksudo "mousepad %f"
Padrão de arquivo:*
Seleção:

  • Arquivos de texto

Programas nesessários:gksu


Extrair áudio de vídeos

Nome:Extrair áudio
Descrição:Tira o áudio com o mesmo nome do vídeo
Comando:nome=$(echo -n %n| sed 's/\....$//'); ffmpeg -i %f -vn -ar 44100 -ac 2 -ab 192 -f mp3 "$nome".mp3 | zenity --progress --pulsate --title="Extraindo" --auto-close --text="Extraindo áudio do vídeo %n"
Padrão de arquivo:*
Seleção:

  • Arquivos de vídeo

Programas nesessários:zenity

Cópia de segurança (usa gksu se o dono da pasta for root)

Para uma seleção, use o comando:
[ $(ls -ldn|awk '{print $3}') == 0 ] && gksu="gksudo"; $gksu cp --backup=t %n %n.backup

Nome:Fazer cópia de segurança
Descrição:Faz uma cópia de segurança dos arquivos com a extensão backup ( root ou não)
Comando:[ $(ls -ldn|awk '{print $3}') == 0 ] && gksu="gksudo"; $gksu copiaseguranca.sh %F
Padrão de arquivo:*
Seleção:

  • Arquivos de áudio

  • Arquivos de imagem

  • Arquivos de texto

  • Arquivos de vídeo

  • Outros arquivos

Programas nesessários:gksu

Mova o script para /usr/local/bin/
Salvar como: copiaseguranca.sh
Dê a permissão de execução chmod +x copiaseguranca.sh

#!/bin/bash
# Faz uma cópia de segurança dos arquivos
# swatquest

for i in [email protected]; do cp --backup=t $i $i.backup; done

exit 0
Rotacionar a imagem para esquerda ou para direita

Nome:Rotacionar para direita
Descrição:Gira a imagem 90º para direita
Comando:rotacionar.sh d %f
Padrão de arquivo:*
Seleção:

  • Arquivos de imagem

Programas nesessários:imagemagick

Nome:Rotacionar para esquerda
Descrição:Gira a imagem 90º  para esquerda
Comando:rotacionar.sh e %f
Padrão de arquivo:*
Seleção:

  • Arquivos de imagem

Programas nesessários:imagemagick

Mova o script para /usr/local/bin/
Ao aplicar o comando "convert "$1" -rotate 90 -quality 100 "$1"" irá apagar a imagem e criar uma nova.
Como às vezes eu ordeno as imagens por data de modificação, o script pega a data de modificação do arquivo original e aplica a data no novo arquivo.
Salvar como: rotacionar.sh
Dê a permissão de execução chmod +x rotacionar.sh

#!/bin/bash
# Gira a imagem para direita ou esquerda
# swatquest

DIRECTION="$1"
shift

datam=$(date -r "$1" +%Y%m%d%H%M.%S);

case "$DIRECTION" in
    "d")
      while (( "$#" )); do
	datam=$(date -r "$1" +%Y%m%d%H%M.%S)
        convert "$1" -rotate 90 -quality 100 "$1"
        sleep 1.1;
	touch -t "$datam" -m "$1"
        shift
      done
    ;;
    "e")
      while (( "$#" )); do
	datam=$(date -r "$1" +%Y%m%d%H%M.%S)
        convert "$1" -rotate -90 -quality 100 "$1"
        sleep 1.1;
	touch -t "$datam" -m "$1"
         shift
      done
    ;;
esac
  
exit 0
Informações de vídeo ou áudio

Nome:Informações da mídia
Descrição:Utiliza o programa MediaInfo para exibir informações
Comando:mediainfo-gui %f
Padrão de arquivo:*
Seleção:

  • Arquivos de áudio

  • Arquivos de vídeo

Programas nesessários:mediainfo

Pesquisar com catfish

Nome:Pesquisar...
Descrição:Pesquisa por arquivos e pastas utilizando o catfish
Comando:catfish  --path=%f
Padrão de arquivo:*
Seleção:

  • Diretórios

Programas nesessários:catfish

Escanear com o antivírus clamav

Nome:Escanear com clamav
Descrição:Antivírus clamav
Comando:clamtk %F
Padrão de arquivo:*
Seleção:

  • Diretórios

  • Arquivos de áudio

  • Arquivos de imagem

  • Arquivos de texto

  • Arquivos de vídeo

  • Outros arquivos

Programas nesessários:clamav e clamtk

Renomear legendas

Nome:Renomear legendas
Descrição:Escolha um vídeo e um arquivo de legenda. A legenda será renomeada com base no nome do vídeo.
Comando:subrnm.sh %F
Padrão de arquivo:*.avi;*.mp4;*.crdownload;*.srt;*.sub
Seleção:

  • Arquivos de texto

  • Arquivos de vídeo

  • Outros arquivos

Programas nesessários:zenity

Mova o script para /usr/local/bin/
Salvar como: subrnm.sh
Dê a permissão de execução chmod +x subrnm.sh

#!/bin/bash
# BSDL Miro Hrončok <[email protected]>
# subrnm .avi .srt (or vice versa)
#http://pastebin.com/DA8jwHz3#

if [ $# -ne 2 ]; then
	#echo "USAGE: subrnm .avi .srt (or vice versa)"
	zenity --error --text "Você não escolheu dois arquivos"
	exit 1
fi

# Which is which
filename=$(basename "$1")
extension=${filename##*.}

# Video first
if [ "$extension" == "avi" ] || [ "$extension" == "mp4" ] || [ "$extension" == "crdownload" ]; then
	#echo "First file is a video"
	subtitles=$(basename "$2")
	extension=${subtitles##*.}
	if [ "$extension" != "srt" ] && [ "$extension" != "sub" ]; then
		#echo "First file is a video. Second file are not subtitles"
		zenity --error --text "O primeiro arquivo é um vídeo, mas o segundo arquivo não é uma legenda"
		exit 1
	fi
	filename=${filename%.*}
	dir=$(dirname "$1")
	mv "$2" "$dir/$filename.$extension"
	exit 0
fi

# Subtitles first
if [ "$extension" == "srt" ] || [ "$extension" == "sub" ]; then
	#echo "First file are subtitles"
	video=$(basename "$2")
	videext=${video##*.}
	if [ "$videext" != "avi" ] && [ "$videext" != "mp4" ] && [ "$videext" != "crdownload" ]; then
		#echo "First file are subtitles. Second file in not a video"
		zenity --error --text "O primeiro arquivo é uma legenda, mas o segundo arquivo não é um vídeo"
		exit 1
	fi
	video=${video%.*}
	dir=$(dirname "$2")
	mv "$1" "$dir/$video.$extension"
	exit 0
fi

#echo "USAGE: subrnm .avi .srt (or vice versa)"
zenity --error --text "O primeiro arquivo não é nem um vídeo e nem umalegenda"
exit 1
Checksum...

Neste daqui você pode escolher qual checksum irá usar:
("md5sum" "sha1sum" "sha224sum" "sha256sum" "sha384sum" "sha512sum")

Você também pode deixar assim:
Para uma seleção:
zenity --info --title="Verificar hash de %n" --text="$(hash=("md5sum" "sha1sum" "sha224sum" "sha256sum" "sha384sum" "sha512sum");for i in ${hash[@]} ; do echo -n "[ $i ]: "; $i  %n| awk '{print $1}';done)"
ou
Para uma ou mais:
zenity --info --title=" Checksum..." --text="$(hash=("md5sum" "sha1sum" "sha224sum" "sha256sum" "sha384sum" "sha512sum");for i in ${hash[@]} ; do echo "[ $i ] "; $i  %N;done)"

Tem também um script: http://www.cupoflinux.com/SBB/index.php?topic=2812.0

Nome:Checksum...
Descrição:Mostra o checksum do arquivo
Comando:hash=("md5sum" "sha1sum" "sha256sum");for i in ${hash[@]} ; do echo "#####################[ $i ]##################### "| tr '[a-z]' '[A-Z]'; $i  %N;done  | zenity --width=1100 --height=500  --text-info  --title=" Checksum..."
Padrão de arquivo:*
Seleção:

  • Arquivos de áudio

  • Arquivos de imagem

  • Arquivos de texto

  • Arquivos de vídeo

  • Outros arquivos

Programas nesessários:zenity

Última edição por swatquest (31/07/2015 18:09:06)

Offline

#2 18/04/2015 01:13:47

swatquest
Moderador
Registrado: 05/10/2010
Mensagens: 1.883

Re: Ações Personalizadas do Thunar

Converter a codificação do arquivo

Nome:Converter a codificação
Descrição:Converte o conteúdo do arquivo
Comando:convert-charset.sh %f
Padrão de arquivo:*.srt;*.txt
Seleção:

  • Arquivos de texto

  • Outros arquivos

Programas nesessários:zenity


Mova o script para /usr/local/bin/
Salvar como: convert-charset.sh
Dê a permissão de execução chmod +x convert-charset.sh

#!/bin/bash
# Converter a codificação do arquivo
# swatquest

arq=$(basename "$1")

iso1=(`echo "" | awk '{print "FALSE","iso-8859-1", $0}'`)
utf8=(`echo "" | awk '{print "FALSE","utf-8", $0}'`)

pega_charset=$(file -b --mime-encoding "$1")


if [ "$pega_charset" = unknown-8bit ]; then
    selection=$(zenity --question --cancel-label="Cancelar" --ok-label="Continuar" --title="Aviso" --text="<b>Codificação:</b> $pega_charset\nNão foi possivel detectar a codificação.\nO script converterá automaticamente de <b>iso-8859-1</b> para <b>utf-8</b>.");
    [ "${PIPESTATUS[0]}" -ne "0" ] && exit 0 ;
    iconv -f iso-8859-1 -t utf-8//TRANSLIT --output="/tmp/$arq" "$arq";
    mv /tmp/"$arq" "$PWD"
else 
    selection=$(zenity --list --radiolist --height=203 --title="Codificação" --text="Escolha a codificação de saída\n\nArquivo original:<b>$pega_charset</b>\n" --column="Seleção" --column="Codificação" "${iso1[@]}" "${utf8[@]}");
    [ "${PIPESTATUS[0]}" -ne "0" ] && exit 0 ;
    iconv -f "$pega_charset" -t "$selection"//TRANSLIT --output="/tmp/$arq" "$arq";
    mv /tmp/"$arq" "$PWD"
fi

Última edição por swatquest (26/07/2015 22:16:48)

Offline

#3 19/04/2015 19:35:41

Henriquenunnes
Membro
De: Limeira-Sp
Registrado: 27/02/2012
Mensagens: 271

Re: Ações Personalizadas do Thunar

Fixa esse tópico! Muito bom!

Estou turbinando meu pobre XFCE!

Obrigado por compartilhar!


Aprendendo Linux de verdade...

Offline

#4 26/07/2015 22:19:30

swatquest
Moderador
Registrado: 05/10/2010
Mensagens: 1.883

Re: Ações Personalizadas do Thunar

Script convert-charset.sh estava dando erro em alguns arquivos
iconv: sequência de entrada ilegal na posição 0

script  atualizado.

foi adicionado //TRANSLIT na opção -t

Offline

#5 29/07/2015 04:50:57

sistematico
Admin
De: Campo Grande / MS
Registrado: 13/06/2008
Mensagens: 1.022
Website

Re: Ações Personalizadas do Thunar

Excelente tutorial, fixado.

Offline

#6 19/04/2016 01:36:10

swatquest
Moderador
Registrado: 05/10/2010
Mensagens: 1.883

Re: Ações Personalizadas do Thunar

Exrair para pasta com nome do arquivo

Nome:Exrair com nome do arquivo
Descrição:Exrair para pasta com nome do arquivo
Comando:extrair.sh %N
Padrão de arquivo:*.rar;*.zip;*.tar;*.ace;*.7z;*.gz;*.bz2;*.xz;*.lz;*.lzma;*.lxo;*.lxz*.arj;*.iso;*.pea;*.zz
Seleção:

  • Outros arquivos

Programas nesessários:p7zip

Mova o script para /usr/local/bin/
Salvar como: extrair.sh
Dê a permissão de execução chmod +x extrair.sh

#!/bin/bash
# Extrair para pasta com o nome do arquivo
# swatquest

for i in $*; do 7z x -o${i%.*} $i; done

exit 0

Offline

#7 Ontem 01:11:01

slackbeck
Membro
Registrado: 05/09/2018
Mensagens: 39

Re: Ações Personalizadas do Thunar

( ATALHOS )

Thunar > Editar > Configure Ações Personalizadas...


1) Criar um Hard Link do arquivo selecionado na mesma pasta.
O nome do atalho vai ser acrescentado de "_hl" ao final.
Hard links somente para arquivos no mesmo HD.
Pastas(Diretórios) não podem ter hard links.

Nome: Hard Link
Comando: ln %f %f_hl


2) Criar Soft Link ( Padrão Windows )
No final do nome do atalho vai ser acrescentado "_sl".
Soft links podem ser apontados para outros HDs ou partições montadas no sistema.
Pastas(Diretórios) somente *podem* ter soft links.

Nome: Atalho (Soft Link)
Comando: ln -s %f %f_sl


OBS: Na criação dessas ações personalizadas para Atalhos no Thunar, deve-se
selecionar a aba "Condições de Aparencimento/Appearance Conditions" e incluir
*todos* os tipos de arquivos: Diretórios, Audio, Texto, Videos, Imagens e Outros...

Última edição por slackbeck (Ontem 01:19:02)

Offline

Rodapé do site