O que o sinal de porcentagem nas sequências do shell do Linux faz?
Quando você está no processo de aprender a usar totalmente o shell do Linux, você pode ficar curioso sobre o quanto você pode manipular as strings para obter os melhores resultados. Com isso em mente, a postagem de perguntas e respostas do SuperUser de hoje tem a resposta para a pergunta de um curioso leitor.
A sessão de perguntas e respostas de hoje nos é oferecida por cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas conduzido pela comunidade..
A questão
Leitor de SuperUser Nissim Kaufmann quer saber o que o sinal de porcentagem nas sequências de shell do Linux faz:
Ao usar o shell do Linux, o que o sinal de porcentagem (%) faz? Por exemplo:
O que o sinal de porcentagem nas sequências de shell do Linux faz?
A resposta
O colaborador do SuperUser Marek Rost tem a resposta para nós:
Quando o sinal de porcentagem (%) é usado no padrão $ variable% substring, ele retornará o conteúdo da variável com a ocorrência mais curta de substring excluída da parte de trás da variável.
Esta função suporta padrões curinga, por isso aceita um asterisco (estrela) como um substituto para zero ou mais caracteres. Deve ser mencionado que este é específico do Bash. Outras shells do Linux não contêm necessariamente essa função.
Se você quiser aprender mais sobre manipulação de strings no Bash, sugiro ler a seguinte página, Advanced Bash-Scripting Guide: Capítulo 10. Manipulando Variáveis. Entre muitas outras funções úteis, explica o que um sinal de porcentagem duplo (%%) faz, por exemplo.
Eu esqueci de mencionar que quando é usado no padrão $ ((variável% number)) ou $ ((variável1% $ variável2)), o caractere de sinal de porcentagem (%) funcionará como um operador de módulo.
Quando o sinal de porcentagem (%) é usado em contextos diferentes, ele deve ser reconhecido apenas como um caractere regular.
Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.
Crédito de imagem: Screenshots do Linux (Flickr)