fileinfo
Fornece informações sobre um arquivo
Seqüência de Chamamento
x = fileinfo(filesPaths) [x,ierr] = fileinfo(filesPaths)
Parâmetros
- filesPaths
vector of paths (as text). Files of any type can be targeted: regular files, directories (in their own), shortcuts, symbolic links, etc.
- x
matrix of decimal integers, of sizes (m,13) with m: number of provided files paths. The row #i returns informations about the file
filesPaths(i)
.If only one path is queried and the file does not exist,
x
returns [].If several files are queried: when a file among them does not exist, its
x
row is filled withNan
values.x column Description 1 : tamanho do arquivo 2 : file permissions (see the description) 3 : id of the file's owner (always 0 on Windows) 4 : id of the file's group (always 0 on Windows) 5 : número do dispositivo 6 : UNIX timestamp of last data modification. getdate(x(:,6))(:,[1 2 6 7 8 9])
returns the corresponding date as a matrix of [year month day hour mn ss] numerical rows.7 : data da última mudança. 8 : data do último acesso. 9 : tipo de dispositivo (se o dispositivo for inode). 10 : tamanho de bloco para a entrada/saída do sismtema de arquivos (sempre 0 no Windows). 11 : número de blocos alocados (sempre 0 no Windows) 12 : File's inode (unique id) (always 0 on Windows) 13 : Number of hard links pointing to this file (always 1 on Windows). - ierr
indicador de erro : 0, se não for encontrado nenhum erro.
Descrição
Esta função é uma interface para a função C stat.
Permissões são tipicamente especificadas como números
octais : dec2oct(x(2))
para conversão.
O modo numérico possui de um a quatro dígitos octais (0-7), derivados através da soma de bits com os valores 4, 2, e 1. Quaisquer dígitos omitidos são supostos como zeros à esquerda. O primeiro dígito seleciona o ID de usuário (4) e ajusta o ID do grupo (2) e atributos "sticky" (1). O segundo dígito seleciona permissões para o usuário que possui o arquivo: leitura (4), escrita (2), e execução (1); o terceiro dígito seleciona permissões para os outros usuários no grupo do arquivo, com os mesmos valores; e o quarto seleciona permissões para outros usuários que não estão no grupo do arquivo, com os mesmos valores.
Exemplos
w = fileinfo(SCI+'/etc/scilab.start') // permissão do arquivo dec2oct(w(2)) // data do arquivo : [year month day hh mn ss .ss] getdate(w(6))(:,[1 2 6:10]) // Verificando a permissão de escrita em um arquivo w = fileinfo(SCI+'/etc/scilab.start') S_IWRITE = 128; // mascarando a permissão de escrita S_IEXEC = 64; // mascarando a permissão de execução S_IREAD = 256; // mascarando a permissão de leitura S_IFCHR = 8192; // mascarando a permissão de diretório if ( bitand( w(2), S_IWRITE ) <> 0) then disp('PERIMISSÃO DE ESCRITA neste arquivo.'); else disp('NÃO HÁ PERIMISSÃO DE ESCRITA neste arquivo.'); end
History
Versão | Descrição |
6.0.0 | Several files paths can now be processed. |
Report an issue | ||
<< deletefile | file_system | findfiles >> |