Testar link simbólico com test -L
Nesta etapa, você aprenderá como testar se um arquivo é um link simbólico usando o comando test com a opção -L.
Um link simbólico (ou symlink) é um tipo especial de arquivo que aponta para outro arquivo ou diretório. Pense nele como um atalho no Windows. Quando você acessa um link simbólico, você está, na verdade, acessando o arquivo ou diretório para o qual ele aponta.
Primeiro, vamos criar um arquivo simples. Certifique-se de estar no diretório ~/project.
echo "This is the original file." > original_file.txt
Agora, vamos criar um link simbólico para original_file.txt. Vamos nomear o link simbólico my_symlink.
ln -s original_file.txt my_symlink
ln: O comando usado para criar links.
-s: Esta opção diz ao ln para criar um link simbólico (em vez de um hard link).
original_file.txt: O arquivo de destino para o qual o link simbólico apontará.
my_symlink: O nome do link simbólico que estamos criando.
Agora, podemos usar o comando test para verificar se my_symlink é um link simbólico. O comando test é usado para verificar tipos de arquivos e comparar valores. Ele não produz saída diretamente, mas seu status de saída indica sucesso (0) ou falha (não-zero).
Podemos combinar test com echo para ver o resultado.
test -L my_symlink && echo "my_symlink is a symbolic link" || echo "my_symlink is NOT a symbolic link"
test -L my_symlink: Isso verifica se my_symlink é um link simbólico.
&&: Este é um operador lógico AND. Se o comando antes de && for bem-sucedido (status de saída 0), o comando após && será executado.
||: Este é um operador lógico OR. Se o comando antes de || falhar (status de saída não-zero), o comando após || será executado.
Como my_symlink é de fato um link simbólico, a saída deve ser:
my_symlink is a symbolic link
Agora, vamos testar um arquivo regular, como original_file.txt:
test -L original_file.txt && echo "original_file.txt is a symbolic link" || echo "original_file.txt is NOT a symbolic link"
A saída deve ser:
original_file.txt is NOT a symbolic link
Isso confirma que test -L identifica corretamente os links simbólicos.