Existe um único UNIX registrado '03 que não pode fazer rm - -foo neste momento?

3

Estou tentando desfazer isso incerteza Eu tenho sobre o uso do traço duplo (dois hífens, -) como um delimitador de fim de opções ( ao contrário de um prefixo de opção longa ). É possível que surja alguma confusão quando alguém lê que longas opções são uma convenção GNU e opções longas começam com -- . Mas isso não está relacionado ao fim da opção delimitador .

O uso do Which é totalmente compatível com IEEE Std 1003.1, Diretriz de Sintaxe de Utilidade 2013 10 :

The first -- argument that is not an option-argument should be accepted as a delimiter indicating the end of options. Any following arguments should be treated as operands, even if they begin with the '-' character.

Portanto, pode-se ver as% man_de% manpages para OSX (ou FreeBSD ), AIX , Solaris e HPUX - o conhecido UNIX '0 3 Unices registrados:

  • OSX, AIX e Solaris 1 referem-se ao textual delimitador rm em man rm
  • O HPUX não discute isso em man rm , mas possui outros comandos que permitem o referido delimitador (como -- )

Existe um único UNIX 03 produto registrado que não pode fazer touch hoje? É Solaris ... HPUX? Eles podem fazer isso mesmo que não documentem? Podemos generalizar isso para todos os comandos nessas plataformas neste momento?

1. O manual do Solaris 11 diz em uma nota final: Se a - - e a - ambos aparecem na mesma linha de comando, o segundo é interpretado como um arquivo. E há um espaço entre os dois primeiros. hífens. É apenas o hífen ou qualquer coisa que comece com o hífen nesse contexto que seria interpretado como um arquivo?

    
por jus cogens prime 26.06.2014 / 05:58

1 resposta

1

Do Solaris 10:

~ touch testfile
~ rm -- testfile
~ ls testfile
testfile: No such file or directory
~ touch testfile
~ rm -- -f testfile
-f: No such file or directory
~ ls testfile
testfile: No such file or directory
~ rm - - -f testfile
-: No such file or directory
-f: No such file or directory
testfile: No such file or directory
~

Portanto, para responder à sua pergunta, no Solaris 10, se a segunda instância começar com um hífen, ela será tratada como um arquivo.

    
por 26.06.2014 / 06:51

Tags