Quando existe 'mkdir -p / path / to / dir' com status diferente de zero?

0
mkdir -p /path/to/something

quando o comando acima sai com status de saída diferente de zero?

Isso acontece, se e somente se /path/to/something não existir como qualquer arquivo (ou como um diretório?) antes de executar o comando e o comando falhar ao criá-lo como um diretório?

man mkdir diz

   -p, --parents
          no error if existing, make parent directories as needed

Obrigado.

    
por Tim 08.05.2018 / 04:46

2 respostas

5

Para elaborar a resposta anterior com alguns exemplos.
Pode ser ao tentar criar pastas dentro de pastas do sistema:

ubuntu:~$ mkdir /proc/test
mkdir: cannot create directory ‘/proc/test’: No such file or directory
ubuntu:~$ mkdir -p /dev/null/test
mkdir: cannot create directory ‘/dev/null’: Not a directory

Ou quando você não tem permissão para a pasta anterior:

ubuntu:~$ mkdir -p /root/test
mkdir: cannot create directory ‘/root’: Permission denied

Ele também falhará se houver um arquivo com o mesmo nome na pasta:

ubuntu:~$ touch /tmp/test
ubuntu:~$ mkdir -p /tmp/test
mkdir: cannot create directory ‘/tmp/test’: File exists
    
por 08.05.2018 / 05:23
2

Em link :

An exit status of zero indicates success, and a nonzero value indicates failure. 

A falha é quando os diretórios precisam ser criados, mas a operação falha.

    
por 08.05.2018 / 04:53

Tags