'?' é usado para combinar com qualquer caractere. Você pode usar '?' por várias vezes para combinar vários caracteres.
Exemplo 1:
Suponha que você queira pesquisar os nomes de arquivos de texto cujos nomes têm 4 caracteres e a extensão é .TXT. Você pode aplicar o padrão de globbing usando '?'Quatro vezes para fazer esta tarefa.
Descubra a lista de todos os arquivos e pasta do diretório atual.
$ ls -l
Execute o seguinte comando pesquise os arquivos cujos nomes têm quatro caracteres de comprimento e desconhecido.
$ ls -l ????.TXTExemplo 2:
Suponha que você queira pesquisar os arquivos de documentos cujos nomes têm 8 caracteres, os 4 primeiros caracteres são f, o, o e t e extensão é Doc. Execute o seguinte comando com o padrão de globbing para pesquisar os arquivos.
$ ls -l Foot????.Doc
Exemplo 3:
Suponha que você sabe que o nome do arquivo é 'melhor' E a extensão tem 3 caracteres, mas não sei a extensão. Execute o seguinte comando usando '?'Para pesquisar todos os arquivos com o nome' teste 'com qualquer extensão de três caracteres.
$ ls -l melhor.???
Asterisk - (*)
'*' é usado para combinar zero ou mais caracteres. Se você tiver menos informações para pesquisar qualquer arquivo ou informação, poderá usar '*' no padrão de globbing.
Exemplo 1:
Suponha que você queira pesquisar todos os arquivos de 'pl' extensão. Execute o seguinte comando usando '*' Para fazer essa tarefa.
$ ls -l *.pl
Exemplo 2:
Suponha que você conhece o caráter inicial do nome do arquivo que é 'a'. Execute o seguinte comando usando '*' para pesquisar todos os arquivos do diretório atual cujos nomes são iniciados 'a'.
$ ls -l a*.*
Exemplo 3:
Você pode aplicar '*' no script bash para vários fins sem pesquisar arquivos. Crie um arquivo bash chamado 'verificar.sh ' com o seguinte script. Aqui, quando o usuário digitar 'y 'ou' y 'ou' sim 'ou' sim ' então 'confirmado' imprimirá e quando o tipo digitará 'n' ou 'n' ou 'não' ou 'não' então 'Não confirmado' irá imprimir.
#!/BIN/BASH
eco "Você quer confirmar?"
Leia a resposta
caso $ responda em
[Yy]*) eco "confirmado.";;
[Nn]*) eco "não confirmado.";;
*) eco "tente novamente.";;
ESAC
Execute o script.
$ Bash cheque.sh
Colchete - ([])
'[]' é usado para combinar com o personagem do intervalo. Algumas das declarações de alcance principalmente usadas são mencionadas abaixo.
Todos os alfabetos em maiúsculas são definidos pelo intervalo como, [: superior:] ou [a-z] .
Todos os alfabetos minúsculos são definidos pelo intervalo como, [: mais baixo:] ou [a-z].
Todos os dígitos numéricos são definidos pelo intervalo como, [: dígito:] ou [0-9].
Todas as maiúsculas e alfabetos mais baixos são definidos pela faixa como, [: alfa:] ou [a-za-z].
Todos os alfabetos em maiúsculas, alfabetos e dígitos minúsculos e dígitos são definidos pelo intervalo como, [: alnum:] ou [A-ZA-Z0-9]
Exemplo 1:
Execute o seguinte comando para pesquisar todos os arquivos e pastas cujo nome contém p ou q ou r ou s.
$ ls -l [p -s]*
Exemplo 2:
Execute o seguinte comando para pesquisar todos os arquivos e pastas cujo nome começa com qualquer dígito de 1 a 5.
$ ls -l [1-5]*
Caret - (^)
Você pode usar '^' com suporte quadrado para definir o padrão de globo mais especificamente. '^' pode ser usado dentro ou fora do suporte quadrado. '^' é usado fora do suporte quadrado para pesquisar o conteúdo do arquivo que começa com uma determinada variedade de caracteres. '^' é usado dentro do suporte quadrado para mostrar todo o conteúdo do arquivo, destacando as linhas que começam com uma determinada gama de caracteres . Você pode usar diferentes tipos de padrões de global para pesquisar conteúdo específico de um arquivo. 'grep' O comando é usado para pesquisa de conteúdo em bash. Suponha que você tenha um arquivo de texto chamado 'lista.TXT' com o seguinte conteúdo. Teste os seguintes exemplos para esse arquivo.
MaçãExemplo 1:
Execute o seguinte comando para pesquisar essas linhas de lista.TXT arquivo que começa com P ou q ou r.
Lista de $ grep '^[p-r]'.TXTExemplo - 2:
Execute o seguinte comando para destacar essas linhas de lista.TXT arquivo que começa com A ou B ou C.
Lista de $ grep '[^a-c]'.TXTSinal exclamatório - (!)
Você pode usar '!' dentro do padrão de alcance. Funciona o mesmo que o uso do símbolo '^' fora do padrão de alcance. Alguns exemplos de uso '!' sinal são dados abaixo.
Exemplo 1:
Execute o seguinte comando para mostrar essas linhas de lista.TXT arquivo que começa com 'P' ou Q ou R.
$ grep [!P-r] Lista.TXTExemplo - 2:
Execute o seguinte comando para mostrar essas linhas de lista.TXT arquivo que começa com qualquer dígito de 4 a 8.
$ grep [!4-8] Lista.TXTSinal de dólar - ($)
'$' é usado para definir o personagem final. Se você sabe que deseja pesquisar informações com base no último caractere, você pode usar '$' no padrão de globbing.
Exemplo 1:
Execute o seguinte comando para pesquisar essas linhas de lista.TXT arquivo que termina com 'a'.
$ grep a $ list.TXTExemplo - 2:
Execute o seguinte comando para pesquisar essas linhas de lista.TXT Arquivo que termine com o número 50.
$ grep 50 $ lista.TXTSuporte encaracolado - ()
'' pode ser usado para combinar nomes de arquivos com mais de um padrão de globo. Cada padrão é separado por '' em suporte encaracolado sem espaço. Alguns exemplos são dados abaixo.
Exemplo 1:
Execute o seguinte comando para pesquisar os arquivos cujos nomes têm 5 caracteres e a extensão é 'sh' ou os dois últimos caracteres dos arquivos são 'st' e a extensão é 'TXT'.
$ ls -l ?????.sh,*st.TXTExemplo - 2:
Execute o seguinte comando para excluir todos os arquivos cujas extensões são 'doc' ou 'docx'.
$ rm *.Doc,*.docx
Tubo- (|)
'|' O sinal também é usado para aplicar mais de uma condição no padrão de global. Cada padrão é separado por '|' Símbolo no comando.
Exemplo 1:
Execute o seguinte comando para pesquisar os nomes de arquivos que estão começando com o personagem 'A' e tem a extensão 'Bash' ou 'Sh'.
$ ls a*+(.Bash |.sh)
Exemplo - 2:
Crie um arquivo bash chamado 'cardápio.tocar ' e adicione o seguinte script. Se o tipo de usuário 1 ou s então vai imprimir “Pesquisando texto”. Se o tipo de usuário 2 ou r então ele vai imprimir “Substituindo o texto”. Se o tipo de usuário 3 ou d então vai imprimir “Excluindo texto”. Vai imprimir "Tente novamente" Para qualquer outra entrada.
#!/BIN/BASH
eco "selecione qualquer opção no menu:"
Leia a resposta
caso $ responda em
1 | S) Echo "Pesquisando Texto" ;;
2 | R) eco "substituindo o texto" ;;
3 | D) eco "Excluindo texto" ;;
*) eco "tente novamente.";;
ESAC
Execute o script.
Menu $ Bash.Bash
Alguns dos padrões de globo mais usados são explicados neste tutorial usando exemplos muito simples. Espero que, depois de praticar os exemplos acima, o conceito de global ficará claro para você e você poderá aplicá -lo em comandos e scripts bash com sucesso.
Para mais informações, verifique este vídeo: