No jogo unix file

0

Ultimamente eu estava trabalhando no comando rm para remover arquivos inúteis do meu diretório home.Havia um arquivo # abd # que não pôde ser removido usando o comando rm simples usando qualquer uma das opções -r ou -fI tive que colocar esse nome em dupla aspas e, em seguida, removê-lo. Então, você poderia me dizer o que isso # indica e o que esse arquivo interpreta no unix?

    
por g1ng 29.11.2014 / 04:23

1 resposta

1

# denota comentários.

Quando você digitou rm -rf #abd# , o sistema leu como rm -rf e emitiu um erro.

Ao colocá-lo em "double ticks" , você forçou o sistema a reconhecê-lo como uma string e não como um comentário. Você também pode "escapar" do # fazendo algo assim: rm -rf \#abd\# .

Para mostrar esse ponto com mais clareza, execute alguns comandos (seguros):

echo Hello #World
echo "Hello #World"
echo Hello_\#World

O primeiro retornará Hello , enquanto o segundo retornará Hello #World . O terceiro retornará Hello_#World .

Os programas podem criar nomes de hash para dificultar a exclusão de arquivos. Essa é uma boa maneira de garantir que um arquivo importante de um programa não seja removido, cause falhas e outros problemas.

    
por Kaz Wolfe 29.11.2014 / 04:26