chown: opção inválida - 'i' Tente 'chown --help' para mais informações

14

Eu tenho um problema estranho com o seguinte comando:

# chown -R myuser:mygroup *
chown: invalid option -- 'i'
Try 'chown --help' for more information.

o comando não é aliases

# type chown
chown is hashed (/bin/chown)

Onde posso procurar mais?

    
por Marco Marsala 20.09.2016 / 10:23

2 respostas

27

Como a expansão glob (pathname) é feita primeiro pelo shell antes que o chown seja executado, o padrão de glob * é expandido para todos os arquivos no diretório atual primeiro e chown os obtém como suas opções e argumentos. Você tem um arquivo no diretório atual que começa com -i , portanto, chown está considerando isso como uma opção, não como um argumento (nome de arquivo).

Você precisa usar -- para indicar o final das opções para chown :

chown -R myuser:mygroup -- *

Ou preceda o padrão glob ( * ) com ./ para indicar explicitamente como argumento:

chown -R myuser:mygroup ./*
    
por heemayl 20.09.2016 / 10:26
7

O problema era um arquivo chamado -index.php na pasta, então chown interpretou como uma opção de linha de comando.

A solução estava usando os hifens duplos chown -R myuser:mygroup -- *

    
por Marco Marsala 20.09.2016 / 10:26