Por que meu “ls-a-l / home” não funciona?

0
Marias-MacBook-Air:~ mariasharapova$ ls -a /home
.   ..

Marias-MacBook-Air:~ mariasharapova$ ls -a-1 /home
ls: illegal option -- -
usage: ls [-ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1] [file ...]

Marias-MacBook-Air:~ mariasharapova$ ls -a-l /home
ls: illegal option -- -
usage: ls [-ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1] [file ...]
    
por Renan 02.06.2015 / 18:12

4 respostas

0

Você não tem um espaço entre -a e -1 , por isso ls está tentando interpretar a - como uma opção, não como significando uma opção. Adicione um espaço ou use apenas ls -a1 e ele deve funcionar corretamente. Embora eu tenha que admitir, -1 parece uma opção bastante incomum - eu geralmente ls -al ao invés de ls -a1 .

    
por 02.06.2015 / 18:23
3

ls -a -l é o que você quis dizer. Os argumentos do Unix devem ser separados por espaço ou combinados em um único argumento, como em ls -al . Para ser justo, seu estilo seria legal no prompt do DOS, no qual você não precisa de espaços antes das opções / -delimited (por exemplo, DIR/D/B está bom). Mas o Unix não é DOS ... felizmente.

    
por 02.06.2015 / 18:25
2

Para combinar duas opções, basta:

ls -al /home
Ou, se você realmente quiser usar um traço para cada opção, faça desta maneira:
ls -a -l /home

    
por 02.06.2015 / 18:21
0

Você precisa separar as opções por um espaço. Se você quiser combinar as opções, você deve remover o traço da segunda opção. Portanto, você deve dizer ls -a -l ou ls -al , mas não pode dizer ls -a-l .

    
por 02.06.2015 / 18:23