Não entendo o seguinte erro: 'mkdir: invalid option -' / '

1

Estou seguindo um tutorial em um livro e estou tentando instalar o Oracle JDK 8.

Eu abri um terminal e digitei o seguinte comando após o prompt do dólar:

sudo mkdir -p/usr/lib/jvm/

No entanto, está me causando o seguinte erro:

  

mkdir: opção inválida - '/'

O que estou fazendo de errado?

    
por Jon295087 19.06.2014 / 22:38

2 respostas

5

Você deve escrever com um espaço após a opção e antes do nome do diretório

sudo mkdir -p    /usr/lib/jvm/

Algumas palavras sobre as opções e o uso do espaço.

Em geral, o uso do espaço após a opção depende do comando e da opção que você pretende usar. Cada vez que você tem que ler a sinopse do comando. Nesse caso, você pode usar man mkdir .

SYNOPSIS  
     mkdir [OPTION]... DIRECTORY...  

DESCRIPTION
...
       -m, --mode=MODE  
             set file mode (as in chmod), not a=rwx - umask  
       -p, --parents
             no error if existing, make parent directories as needed

...

Se a opção for escrita com um espaço , você terá que usar o espaço entre a opção e o argumento option_argument. Se não estiver presente, você não precisa usá-lo. Você pode ver os links padrão abaixo para a lista completa de regras e exceções.

Além disso, no mesmo comando, você pode ter duas ou mais maneiras de chamar a mesma ação.
Então, para outra opção com o mesmo comando, você pode fazer

mkdir A  -m a+x
mkdir A --mode=a+x

Esse comando é equivalente e produz o mesmo efeito, mas no primeiro caso você precisa do espaço e o segundo não.

Nota:

  • a opção -p ou --parents não requer argumento e precisa ser separada, no entanto, do (s) nome (s) do diretório que você deseja criar.

Referências:
Se estiver interessado, leia mais sobre esses padrões IEEE Std 1003.1-2001 12.1.2 e GNU Getopt .

    
por Hastur 19.06.2014 / 22:39
8

Precisa haver um espaço após o -p , então ...

sudo mkdir -p /usr/lib/jvm/
    
por Rinzwind 19.06.2014 / 22:39