O que significa = ~ ~?

O que significa = ~ ~?
Um programa Bash é um documento de texto simples com uma série de instruções. Essas declarações combinam instruções que colocamos no prompt de comando manualmente (incluindo esses Ls ou CP). Da mesma forma, o que você puder realizar com um script também pode ser feito com um prompt de comando. Um sinal de correspondência regular de expressão, o operador = ~ é usado para identificar expressões regulares. Perl possui um operador semelhante para expressão regular correspondente, que estimulou este operador. Vamos ter alguns exemplos para ver o funcionamento de = ~ Operador no Ubuntu 20.04.

Exemplo 01:

Em primeiro lugar, precisamos nos conectar do nosso sistema. Depois disso, na área de trabalho, pressione “Ctrl+Alt+T” para abrir o terminal do console no Ubuntu 20.04. Como uma maneira alternativa, também podemos usar o menu "atividade" no canto superior esquerdo da área de trabalho. Toque em "Atividade" e a barra de pesquisa será aparada. Clique nele e escreva "Terminal". O aplicativo terminal será exibido. Bata nele para abri -lo. Agora o terminal foi aberto usando um dos dois métodos mencionados, como mostrado. Vamos ver como o operador = ~ funciona nele. Primeiro de tudo, para escrever um script bash, precisamos de alguns arquivos de bash a serem criados. Portanto, criamos um arquivo “Novo.sh ”com a consulta típica de“ toque ”do console como abaixo.

$ touch novo.sh

Você pode encontrar o arquivo Bash criado dentro da pasta doméstico do Ubuntu 20.04. À medida que o arquivo é criado, estaremos adicionando algum script bash a ele. Para isso, temos que abrir este arquivo dentro do terminal usando algum editor. Então, utilizamos o editor da GNU Nano para fazê -lo, como mostrado abaixo.

$ nano novo.sh

Agora o arquivo está aberto no editor da GNU; Temos que colocar o código de bash abaixo de caroço nele. Você pode ver que adicionamos a extensão do bash nele. Depois disso, inicializamos uma variável "var" com algum valor de string que contém números e alfabetos. Colocamos a declaração "se" para verificar a condição se ela atender ou não. Essa condição verificará se a variável "var" contém os caracteres, símbolos e alfabetos mencionados no lado direito dentro da cláusula de condição. Se o padrão contiver alguns alfabetos e símbolos, ele exibirá "correspondente" dentro do terminal por declaração de eco; Caso contrário, imprima “não correspondente”.

Salve o script Bash por Ctrl+S e saia via “Ctrl+X@. Vamos executar o arquivo Bash “Novo.sh ”via Bash Query como abaixo. A saída mostra a saída como "correspondente", pois o padrão variável corresponde ao conjunto definido de caracteres e alfabetos.

$ Bash novo.sh

Exemplo 02:

Vamos ter um exemplo mais simples desta vez. Abra o mesmo “novo.Arquivo SH ”para atualizar seu conteúdo. Então, use a instrução abaixo no shell novamente.

$ nano novo.sh

Depois de abri -lo no editor da GNU, vamos atualizá -lo com o script abaixo do bash. Bash teve um operador de comparação de correspondência de padrões construído, simbolizado por = ~ da versão 3 (aproximadamente 2004). Muitas técnicas de script que anteriormente exigiam todo o uso de grep ou sed podem muito bem ser gerenciadas usando declarações de bash, e frases de bash podem até tornar seus scripts mais simples de entender e gerenciar. Bash retorna um 0 quando um argumento como $ var = “[[0-9]]” demonstra que o campo à esquerda satisfaz a frase à direita, ou um em outro lugar, tanto quanto outros operadores de contraste (e.g., -lt ou ==). Como demos o valor "6" para a variável "var", ela satisfaz a condição, portanto retorna 0. Em seguida, ele imprimirá a mensagem de que “6 é um número”. Se a condição der errado, será imprimir “não numeros”. Salvamos o arquivo por "Ctrl+S" e o retornamos ao terminal através da tecla de atalho "Ctrl+X".

Depois de executar o arquivo novamente no terminal, ele exibe que "6 é um número" através da seguinte consulta.

$ Bash novo.sh

Ele exibe a mensagem "6 é um número" porque a variável "var" satisfaz a condição dentro da instrução "se". Vamos atualizar nossa variável para ver a saída mais uma vez. Abra o arquivo Bash mais uma vez via:

$ nano novo.sh

Depois de abrir o arquivo em um editor, atualizamos a variável e atribuímos um valor de tipo de string "g". Desta vez, a condição não deve ser satisfeita e deve gerar a segunda declaração de eco "não um número" no terminal. Salve e feche o arquivo de script Bash.

Após a execução do arquivo Bash, encontramos os resultados esperados. Você pode ter uma aparência exibida a mensagem "não um número" em troca da condição da instrução "se". Usamos a consulta declarada no console para ver a saída.

$ Bash novo.sh

Exemplo 03:

Vamos dar um exemplo muito mais simples, mas um pouco diferente. Abra o arquivo Bash “Novo.sh ”novamente.

$ nano novo.sh

Quando você não tem certeza exatamente do que significa "expressão regular", aqui está uma descrição rápida. Uma sequência é representada por uma expressão regular, que é uma série de letras. Em primeiro lugar, exibimos uma mensagem "Digite qualquer coisa" para um usuário e depois lemos a entrada que um usuário entra no terminal. Em seguida, colocamos a instrução IF para verificar se o valor de entrada inserido por um usuário correspondente ao padrão mencionado. Na ilustração abaixo, [0-9] se encaixa no número único, mas [a-z] se encaixa em uma certa letra maiúscula. [A-Z]+ caberá em qualquer combinação de caixa superior. A frase [a-z]+$, mas por outro lado, poderia satisfazer uma corda consistindo inteiramente de letras maiúsculas.

Após a execução, o usuário entrou, 9. Imprime que “9 é um número”.

Após a execução novamente, o usuário inseriu #. Ele exibiu que “# não é número”.

Quando um usuário inseriu "K", exibe que "K não é número".

Exemplo 04:

Vamos dar um exemplo complexo para elaborar o operador = ~. Abra o arquivo mais uma vez.

$ nano novo.sh

Regex em Bash pode ser um pouco complicado. Estamos verificando se o conteúdo do campo de email $ parece o de um endereço de e -mail ao longo da amostra abaixo. De fato, vale a pena notar que a primeira frase (o nome da conta) pode incluir cartas, números e símbolos especiais. O símbolo @ aparece no nome intermediário e também no site de e-mail, bem como um ponto literal (.) visto entre o principal domínio da web e o "com", "net", "gov" e assim por diante. Suportes duplos são usados ​​para cercar o contraste.

Após a primeira execução, o usuário inseriu o padrão correto de email. A saída exibe o email com uma mensagem de sucesso de que "o email está correto".

Após outra execução, o usuário inseriu o padrão errado de email. Portanto, a saída de email mostra a mensagem de falha de que “o email não parece correto”.

Conclusão:

Neste guia, vimos o trabalho e a funcionalidade do operador = ~ dentro do script Bash e o que isso significa na festa. Esperamos.