Sistemas Operacionais Abertos
Transcrição
Sistemas Operacionais Abertos
Sistemas Operacionais Abertos wildcards (coringas) Navegue para o diretório /tmp: # cd /tmp Dentro deste diretório criaremos quinze arquivos iniciados com "teste" e contendo números em seu final. Criando os arquivos: # touch teste{1,2,3,4,5,6,7,8,9,10,20,25,30,40,45} Agora crie um arquivo chamado "otesteo": # touch otesteo Conferindo! • # ls *test* otesteo teste10 teste20 teste3 teste4 teste45 teste6 teste8 teste1 teste2 teste25 teste30 teste40 teste5 teste7 teste9 # ls teste[1-9] teste1 teste2 teste3 teste4 teste5 teste6 teste7 teste8 teste9 Resultado • Vamos agora listar arquivos com dois números no final de seu nome, veja, para que consiga realizar tal listagem precisaremos repetir o uso dos [] na expressão. • Para cada casa usamos um par de colchetes [], e assim sucessivamente. Para, por exemplo, arquivos que contenham o ano de criação, precisaremos usar 4 pares de colchetes, um para cada casa, vamos lá então: Verificando! • # ls test[1-9][0] teste10 teste20 teste30 teste40 # ls teste[1-9][0-5] teste10 teste20 teste25 teste30 teste40 teste45 Outro caso! • criando arquivos chamados teste.txt teste.conf e 123teste.txt 123teste.conf. • # touch 123teste{.txt,.conf} teste{.txt,.conf} • podemos criar arquivos de várias extensões diferentes sem precisar repetir o comando Praticando! • quero listar os seguintes: otesteo, 123teste.txt, 123teste.conf, teste.txt e teste.conf. • # ls *teste{o,.txt,.conf} • 123teste.conf 123teste.txt otesteo teste.conf teste.txt • todos os arquivos continham teste, então este é o o ponto de partida • *teste eliminou qualquer caractere antes deste. Outro exemplo • copiar todos os arquivos iniciados com a, b, c, e, f com extensão .conf de /etc para /tmp • cp -v /etc/{a,b,c,e,f}*.conf /tmp `/etc/adduser.conf' -> `/tmp/adduser.conf' `/etc/brltty.conf' -> `/tmp/brltty.conf' `/etc/casper.conf' -> `/tmp/casper.conf' cp: cannot stat `/etc/e*.conf': No such file or directory `/etc/fdmount.conf' -> `/tmp/fdmount.conf' `/etc/fuse.conf' -> `/tmp/fuse.conf' Outro exemplo • copiar todos os arquivos que terminam com as letras r, s, t, u, z do diretório /etc e que tenham ainda extensão .conf para /tmp. # cp -v /etc/*{r,s,t,u,z}.conf /tmp Mais um exemplo • mover todos arquivos que acabamos de copiar de /etc para /tmp para o home do usuário criado (exceto os que terminem com a letra t) e que tenham extensão .conf. • # mv /tmp/*{r,s,u,z}.conf /home FIM