Gerenciador de arquivos Ranger - fazendo com que ele abra arquivos archive com script personalizado?

0

Adquiri um script personalizado que extrai todos os arquivos e aguarda a entrada. Abaixo:

    #!/bin/bash

GET="."

SCRIPTNAME="${0##*/}"

err() {
    printf >&2 "$SCRIPTNAME: $*\n"
    exit 1
}

ARC="$1"
[[ -f $ARC ]] || err $"'$ARC' does not exist"
ARC="$(readlink -f "$ARC")"

read -p "Extract to [default: $DEFAULT_TARGET]: " TARGET
[[ -z $TARGET ]] &&\
    TARGET="$DEFAULT_TARGET"
[[ -d $TARGET ]] || err $"Directory '$TARGET' does not exist"
[[ -w $TARGET ]] || err $"Permission denied: '$TARGET' is not writable"

cd "$TARGET"
case "$ARC" in
    *.tar.bz2)   tar xjf "$ARC"     ;;
    *.tar.gz)    tar xzf "$ARC"     ;;
    *.bz2)       bunzip2 "$ARC"     ;;
    *.rar)       unrar e "$ARC"     ;;
    *.gz)        gunzip "$ARC"      ;;
    *.tar)       tar xf "$ARC"      ;;
    *.tbz2)      tar xjf "$ARC"     ;;
    *.tgz)       tar xzf "$ARC"     ;;
    *.zip)       unzip "$ARC"       ;;
    *.Z)         uncompress "$ARC"  ;;
    *.7z)        7z x "$ARC"        ;;
    *)           echo "'$ARC' cannot be extracted by $SCRIPTNAME" ;;
esac

Estou usando o Ranger FM. Eu estou tentando fazer com que ele use o script /usr/bin/extract.sh para abrir todos os arquivos. Executar o script de um terminal não é problema, mas como estou tentando usá-lo no Ranger, recebo:

/usr/bin/extract.sh - o rótulo é indefinido.

Eu adicionei o seguinte ao meu .config / ranger / rifle.conf:

label extract, ext 7z | ace | ar | arc | bz2 | | cab | cpio | cpt | deb | dgc | dmg | gz, = /usr/bin/extract.sh - "$ @"

No entanto, não está funcionando. O que eu fiz de errado?

Obrigado antecipadamente.

    
por user224674 20.09.2014 / 10:43

1 resposta

2

Eu resolvi isso. Para qualquer pessoa interessada, foi uma combinação de erro simples de sintaxe e ter que:

  1. Coloque o script, chamado extract.sh, em / bin / extract (sem .sh)

  2. Adicione um alias como tal a .zshrc: alias extract="/ bin / extract"

  3. Tenha as seguintes linhas em .config / ranger / rifle.conf (o erro de sintaxe:):

    ext 7z | ás | ar | arc | bz2 | | cab | cpio | cpt | deb | dgc | dmg | gz, tem aunpack = extract "$ @"

    ext iso | jar | msi | pkg | rar | shar | tar | tgz | xar | xpi | xz | zip, tem tar, 'sinalizador f = extrair "$ @"

    extrato de rótulo, ext 7z | ace | ar | arc | bz2 | | cab | cpio | cp | deb | dgc | dmg | gz, = / bin / extract

por user224674 20.09.2014 / 14:11