shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script-pt] Usando yad como interface para o pass


From: Julio C. Neves
Subject: Re: [shell-script-pt] Usando yad como interface para o pass
Date: Wed, 24 Jun 2020 19:15:00 -0300

Fala Amigão,
eu não havia entendido o basename que ele usou pq vejo base name, quero logo trocar. O Ulisses mandou essa maçaroca como sendo a saída do find, aí não dá para usar a Exp Parm pura, precisa de um loop. Mas veja que interessante:

function DeixaNome
{
    : ${1##*/}
    echo ${_%.*}
}
$ DeixaNome /home/odysseus/.password-store/Finance/PagSeguro.gpg
PagSeguro

O cmd : não faz nada, mas a subst, de parm. tira de $1 (1º parâmetro da função) tudo até a barra mais à direita, após essa instrução veja o que acontece:
$ Var=/home/odysseus/.password-store/Finance/PagSeguro.gpg
$ : ${Var##*/}
$ echo $_
PagSeguro.gpg

Assim sendo a segunda linha da função aproveita o conteúdo de $_ e mata o que estiver à direita do último ponto. O problema seria um arq.tar.gz. Nesse caso o % deveria ser trocado por %%.

Se a qtd de arquivos não for muito grande, é capaz de um for com essa função ser mais rápido que um basename

Abraços,
Julio

» Não tem tempo para fazer um curso presencial?
» Na sua cidade não tem nenhum bom curso de Linux?
Somente nesta semana de 15-19/06, as inscrições estarão
abertas para uma nova turma. Veja mais detalhes em:

Também damos treinamento em sua empresa
em qualquer cidadecom certificado e nota fiscal.







Em qua., 24 de jun. de 2020 às 17:30, Alfredo Casanova <atcasanova@gmail.com> escreveu:
Aquele artigo sobre substituição de parâmetros que te mandei vai resolver isso pra você, hein?


On Wed, Jun 24, 2020 at 4:52 PM Ulisses Alves por (shell-script-pt) <shell-script-pt@nongnu.org> wrote:
Como pedido, aqui vai o conteúdo de "$results":

/home/odysseus/.password-store/Finance/PagSeguro.gpg
/home/odysseus/.password-store/Finance/oiwarren.com.gpg
/home/odysseus/.password-store/Finance/entropay.com.gpg
/home/odysseus/.password-store/Finance/Paypal.gpg
/home/odysseus/.password-store/Finance/PayPal_US.gpg
/home/odysseus/.password-store/Finance/mercadobitcoin.com.br.gpg
/home/odysseus/.password-store/Finance/betfair.com.gpg
/home/odysseus/.password-store/Finance/foxbit.exchange.gpg
/home/odysseus/.password-store/e-Commerce_Creds/Amazon.gpg
/home/odysseus/.password-store/e-Commerce_Creds/PlayStore.gpg
/home/odysseus/.password-store/Email/Yahoo_Mail.gpg

Esse conteúdo vai depender do resultado do find, claro. Pra esse exemplo, eu só digitei a letra "a" na busca, pra poder vir mais coisa.
O que eu preciso é remover todo o path, EXCETO os últimos diretórios, que representam as categorias que uso. Também preciso remover a extensão .gpg, de forma que eu tenha uma lista da seguinte forma:

Finance/PagSeguro
Finance/oiwarren.com
Finance/entropay.com
Finance/Paypal
Finance/PayPal_US
Finance/mercadobitcoin.com.br
Finance/betfair.com
Finance/foxbit.exchange
e-Commerce_Creds/Amazon
e-Commerce_Creds/PlayStore
Email/Yahoo_Mail

Atualmente estou conseguindo esse resultado parcialmente, usando o basename e posteriormente colocando seguinte grep:
grep -oE "[[:alnum:]_-]+/$gpgfile" <<< "$results"

Utilizando "$results" novamente.

Respeitosamente,

Ulisses Alves
"UOLAYFIRERTRUAESBEILHIDUBGSCNOKLYFUROUSOECYACSSSTUSNOIKHOYLHOSAUEBMLOEC"
image

Sent with ProtonMail Secure Email.

‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Wednesday, June 24, 2020 4:37 PM, Julio C. Neves <julio.neves@gmail.com> wrote:

Um favorzinho: dá um echo "$Results" (não esqueça das aspas) copia e cola na lista

Abraços,
Julio

» Não tem tempo para fazer um curso presencial?
» Na sua cidade não tem nenhum bom curso de Linux?
Somente nesta semana de 15-19/06, as inscrições estarão
abertas para uma nova turma. Veja mais detalhes em:

Também damos treinamento em sua empresa
em qualquer cidadecom certificado e nota fiscal.









Em qua., 24 de jun. de 2020 às 14:10, Ulisses Alves <ulisses.alves@protonmail.com> escreveu:
Pessoal, muito obrigado pelas sugestões!! Já to alterando aqui o código.

Alguns comentários:
- Fernando, muito obrigado. Vou alterar as variáveis pra minúsculas. Realmente faz todo sentido.
- Prof. Júlio, eu ainda não cheguei no ponto de conhecer a fundo o comando test e as diferenças entre [ e [[. Realmente não sabia que um está substituindo o outro. Eu achava que eram ambos válidos e que havia diferença de uso.
- Prof. Júlio, eu tentei utilizar expansão de variável, mas não funcionou. A variável que eu to usando tem várias linhas, são os resultados da busca que fiz. Eu preciso remover as extensões de cada linha, mas ao fazer expansão de variável, somente a última instancia é removida. Eu fiz assim: $("${results%%.gpg}")). Provavelmente tem uma forma de fazer isso, mas eu ainda não descobri como.


Respeitosamente,

Ulisses Alves
"UOLAYFIRERTRUAESBEILHIDUBGSCNOKLYFUROUSOECYACSSSTUSNOIKHOYLHOSAUEBMLOEC"
image

Sent with ProtonMail Secure Email.


_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse: https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/

NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize somente esta.


--
[]'s
Alfredo Tristão Casanova .͘.
Linux User #228230
tel: +55 61 9655 9619

reply via email to

[Prev in Thread] Current Thread [Next in Thread]