Perl | Operadores de teste de arquivo
Operadores de teste de arquivo em Perl são os operadores lógicos que retornam valores True ou False. Existem muitos operadores em Perl que você pode usar para testar vários aspectos diferentes de um arquivo. Por exemplo, para verificar a existência de um operador file -e é usado. Ou pode ser verificado se um arquivo pode ser gravado antes de executar a operação de acréscimo. Isso ajudará a reduzir o número de erros que um programa pode encontrar.
O exemplo a seguir usa o operador de existência '-e' para verificar se um arquivo existe ou não:
#!/usr/bin/perl
# Using predefined modules
use warnings;
use strict;
# Providing path of file to a variable
my $filename = 'C:\Users\GeeksForGeeks\GFG.txt';
# Checking for the file existence
if(-e $filename)
{
# If File exists
print("File $filename exists\n");
}
else
{
# If File doesn't exists
print("File $filename does not exists\n");
}
Saída:
O nome do arquivo ou identificador de arquivo é passado como um argumento para este operador de teste de arquivo -e.
A seguir está uma lista dos operadores de teste de arquivo mais importantes:
}
.string-table td,th{background-color:#c6ebd9;border:1px solid #5fb962;text-align:left;padding:8px;
}.string-table td:nth-child(odd){background-color:#c6ebd9}.string-table th{border:1px solid #5fb962;
text-align: left;
}.string-table td{border:1px solid #5fb962;color:#000;text-align:left!important}</style>
Operador | Descrição |
---|---|
-r | verifica se o arquivo é legível |
-C | verifica se o arquivo é gravável |
-x | verifica se o arquivo é executável |
-o | verifica se o arquivo pertence a um uid efetivo |
-R | verifica se o arquivo é legível por uid real |
-C | verifica se o arquivo é gravável por uid real |
-X | verifica se o arquivo é executável por uid / gid real |
-O | verifica se o arquivo pertence a uid real |
-e | verifica se o arquivo existe |
-z | verifica se o arquivo está vazio |
-s | verifica se o tamanho do arquivo é diferente de zero (retorna o tamanho em bytes) |
-f | verifica se o arquivo é um arquivo de texto simples |
-d | verifica se o arquivo é um diretório |
-eu | verifica se o arquivo é um link simbólico |
-p | verifica se o arquivo é um canal nomeado (FIFO): ou Filehandle é um canal |
-S | verifica se o arquivo é um soquete |
-b | verifica se o arquivo é um arquivo especial de bloco |
-c | verifica se o arquivo é um arquivo especial de caracteres |
-t | verifica se o identificador de arquivo está aberto para um tty |
-você | verifica se o arquivo tem conjunto de bits setuid |
-g | verifica se o arquivo tem conjunto de bits setgid |
-k | verifica se o arquivo tem bit pegajoso definido |
-T | verifica se o arquivo é um arquivo de texto ASCII (estimativa heurística) |
-B | verifica se o arquivo é um arquivo "binário" (oposto de -T) |
Você pode usar o operador lógico AND em conjunto com os operadores de teste de arquivo da seguinte maneira:
#!/usr/bin/perl
# Using predefined modules
use warnings;
use strict;
# Providing path of file to a variable
my $filename = 'C:\Users\GeeksForGeeks\GFG.txt';
# Applying multiple Test Operators
# on the File
if(-e $filename && -f _ && -r _ )
{
print("File $filename exists and readable\n");
}
else
{
print("File $filename doesn't exists")
}
Saída: O
exemplo acima, verifica a existência do arquivo e se o arquivo é simples ou não e se pode ser lido.
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva