Alisson, O mv não tem que aceitar coisa alguma. O coringa * (que veio originalmente da notação estrela do Multics, antes do próprio Unix) é expandido pelo shell e entregue ao programa na lista de argumentos.
ex: echo arq* o shell interpreta essa linha como comando: echo argumentos: * -> OPA! * é uma máscara que representa TODOS os arquivos e diretórios no diretorio corrente que cujo nome não começe por . (ponto -- como no caso do .bashrc e do diretorio ..), LOGO eu vou substituir esse asterisco por essas coisas. --- substituição -- comando: echo argumentos: arq1, arq1, ...arqN ai o mv executa essa linha de comandos. Repetindo: o mv, o echo, o ls, o wget e qq outro programa nem sabe que tem um * -- a menos q vc escapasse-o ex: echo \* echo '*' ai o shell entende que é o caracter * O que o MV entende: a opção -- se vc tiver um arquivo chamado '-i' e tentar mover ou remover, vai dar problema, pois o - é um sinal de argumento de linha de comando lido pelo programa. Para passar um -i que represente 'isso é o nome de um arquivo e não um parâmetro' vc deve usar a opção -- e informar depois (isso diz pro getopts para parar de procurar parametros). ex: mv -i arquivo.txt (vai dar erro) mv -- -i arquivo.txt (perfeito). Poste a exata linha de erro, ok? Att Tiago 2008/2/8 alisson3at110 <[EMAIL PROTECTED]>: > > > Ola pessoal > Estou com um problema em um Script, quero mover para um diretorio > varios arquivos começando com o mesmo nome, o usuario informa o nome > inicial dos arquivos e o script envia > mv arq* destino > > mas o problema que o mv não aceita o *, qual o outro comando que posso > executar ?? > > Alisson > > -- Tiago B Peczenyj Linux User #405772 http://peczenyj.blogspot.com/ "what does not kill us makes us stronger"
