Busca

Visite também: UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 



 

Aprenda inglês em casa

Baixe gratuitamente as duas primeiras aulas

English for Reading and Listening

Receba por email, diariamente, mensagens contendo materiais para leitura e audição, incluindo arquivos no formato MP3 gravados por falantes nativos.

Saiba mais e faça sua inscrição

você está aqui: Home  → Colunistas  →  Cantinho do Shell

 

Os Comandos basename e dirname

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 05 de Março de 2008

Este comando, quando recebe como argumento o caminho de um arquivo, remove a porção de diretórios, deixando o nome do arquivo.

Um exemplo:

  % basename /usr/local/doc/proposta.txt
  proposta.txt

Em outras palavras, o que este comando faz é retirar a última parte da cadeia de caracteres que não contenha o caracter "/". Se a cadeia de caracteres terminar em "/", este caracter também é removido:

  % basename /usr/local/doc/proposta.txt/
  proposta.txt

Outra aplicação interessante é o uso deste comando para remoção da extensão. Veja só:

  $ basename /usr/local/doc/propost.txt .txt
  proposta

Agora para que serve isto? O mais óbvio é quando se quer renomear múltiplos arquivos (o que também pode ser feito de diversas outras formas):

  #!/bin/sh
  for file in `find . -name \*.txt -print`
  do
          mv $file `dirname $file`/`basename $file .txt`.doc
  done

Este script renomeia todos os arquivos que tiverem a extensão .txt, a partir de um certo ponto na árvore de diretórios para um arquivo com o mesmo nome base e extensão .doc.

Apareceu um comando novo neste script, o comando dirname. Ele faz o contrário do que faz o comando basename:

  $ dirname /usr/local/doc/proposta.txt
  /usr/local/doc

Uma aplicação deste comando eu já mostrei acima. E existem muitas outras. O resto fica para vocês :) Enviem as suas idéias.

Publicado originalmente na Dicas-L em 26 de agosto de 1998
Versão para impressão
  • Currently 2.99/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (159 votos)

Artigos Publicados


Linux Shell Script em Newsgroup

Servidor: news.gmane.org

Grupo: gmane.org.user-groups.programming.shell.brazil


Para se manter atualizado sobre as novidades desta coluna, consulte sempre o newsfeed RSS

Cantinho do Shell NewsFeed RSS

Para saber mais sobre RSS, leia o artigo O Padrão RSS - A luz no fim do túnel.


Opinião dos Leitores

*Nome:
Email:
Me notifique sobre novos comentários nessa pagina
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script

Recomende este site
Recomendar este artigo