![]() |
Tcl/Tk
Curso On-Line de Programação |
Acesso ao sistema de arquivos
Tcl possui diversos comandos que permitem acessar o sistema de arquivos de um computador. Muitos desses comandos, possuem opções que só estam disponíveis em um determinado sistema operacional.
Para saber quais opções estão disponíveis no sistema operacional do seu computador, consulte a documentação on-line, ou o Tcl/Tk Reference Guide, ou ainda o Tcl/Tk Electronic Reference.
Para uma maior portabilidade de seu programa,
é recomendável utilizar apenas as opções indepentes
de sistema operacional.
| Comando | Descrição |
| file atime | Retorna o tempo em segundos, a partir 01/01/1970, desde o último acesso ao arquivo. |
| file attributes | Retorna ao define os atributos de um arquivo. As opções são diferentes para o UNIX, o Windows e o MacOS. |
| file copy | Copia um ou mais arquivos para outro. |
| file delete | Remove um arquivo. |
| file dirname | Retorna o caminho completo de um arquivo. |
| file executable | Retorna 1 se o arquivo for um programa executável pelo usuário, 0 caso contrário. |
| file exists | Retorna 1 se o arquivo existir( e se o usuário puder ler o seu diretório ), 0 caso contrário. |
| file extension | Retorna a extensão de um arquivo. |
| file isdirectory | Retorna 1 se o arquivo for um diretório, 0 caso contrário. |
| file isfile | Retorna 1 se o arquivo for um arquivo regular, 0 caso contrário. |
| file join | Une nome de arquivo e diretórios, usando o separador correto para o sistema operacional. |
| file lstat | O mesmo que file stat, mas usando a chamada lstat do kernel. |
| file mkdir | Cria um ou mais diretórios. Pode criar uma árvore inteira. |
| file mtime | Retorna o tempo em segundos, a partir 01/01/1970, desde a última modificação no arquivo. |
| file nativename | Retorna o nome específico do arquivo para o sistema operacional corrente. |
| file owned | Retorna 1 se o arquivo pertencer ao usuário, 0 caso contrário. |
| file pathtype | Retorna o tipo do caminho: absolute, relative ou volumerelative. |
| file readable | Retorna 1 se o arquivo puder ser lido pelo usuário, 0 caso contrário. |
| file readlink | Retorna o valor do link sinbólico. |
| file rename | Renomeia um arquivo. |
| file rootname | Retorna o nome do arquivo sem a extensão. |
| file size | Retorna o tamanho do arquivo. |
| file split | Retorna o caminho de um arquivo em uma lista. Cada subdiretório como um elemento da lista. |
| file stat | Retorna os resultados da chamada à função stat do kernel em uma lista, cujos elementos são: atime, ctime, dev, gid, ino, mode, mtime, nlink, size, type e uid. |
| file tail | Retorna o nome do arquivo, sem o caminho. |
| file type | Retorna o tipo do arquivo: file, directory, characterSpecial, blockSpecial, fifo, link ou socket. |
| file volume | Retorna a lista dos drivers locais no Windows, dos drivers locais e de rede no MacOS e apenas "/" no UNIX. |
| file writable | Retorna 1 se o usuário puder escrever no arquivo, 0 caso contrário. |
Exemplos
file copy
file copy c:/autoexec.bat c:/autoexec.bakCopia c:\autoexec.bat para c:\autoexec.bak.
file delete
file delete c:/autoexec.bakApaga o arquivo c:\autoexec.bak
file exists
puts [file exists c:/autoexec.bat]Retorna 1 pois o arquivo existe no meu computador.
file join
puts [file join c autoexec.bat]No Windows retorna c:/autoexec.bat
file mkdir
file mkdir c:/tmp/dir1/subdir1/subsubdir1Cria o diretório tmp e todos os subdiretorios especificados abaixo dele.
file rename
file rename c:/autoexec.bak c:/autoexec.oldRenomeia c:\autoexec.bak para c:\autoexec.old.
file size
puts [file size c:/autoexec.bat]Retorna o tamanho do arquivo.
file volume
puts [file volume]Em meu computador retornou, no Windows:
a:/ c:/ d:/ e:/ f:/E no Linux apenas:
/
No Windows, não utilize "\"
para separar diretórios e nomes de arquivos, use "/", pois Tcl interpreta
o caractere "\" como um caractere especial. Se desejar poderá usar
"\\".
Para uma descrição detalhada de todos os comandos disponíveis em Tcl para acesso ao sistema de arquivos, consulte a documentação on-line, ou o Tcl/Tk Reference Guide, ou ainda o Tcl/Tk Electronic Reference.
Para maiores informações envie e-mail para info@souzamonteiro.com.
| http://www.souzamonteiro.com |
Copyright(C) 2000 by Roberto Luiz Souza Monteiro