Por que o Unix-head diz “menos”?

55

Algumas semanas atrás, assisti a uma palestra no Git de alguém que parecia ser de um usuário do Windows. Eu digo "parecia ser" porque ele dizia "traço" quando se referia a opções de linha de comando. Lembrei-me então de algo que achei curioso em meus primeiros dias de aprender Linux; isto é, ao se referir a opções, o Unix-head residente sempre dizia "menos". Isso é:

rm -rf /var/tmp/bogus/junk

Seria dito "arr em menos arrf" em oposição a "arr em dash arr ef".

Por que isso acontece?

    
por Eric Smith 18.09.2010 / 18:57

16 respostas

70

Dois dos mais importantes livros sobre UNIX, O Ambiente de Programação do UNIX e A linguagem de programação C refere-se a ela como menos.

O Ambiente de Programação Unix, página 13 :

Options follow the command name on the command line, and are usually made up of an initial minus sign (-) and a single letter.

A Linguagem de Programação C, 2ª Edição, página 116 :

A common convention for C programs on UNIX systems is that an argument that begins with a minus sign introduces an optional flag.

Muitos usuários do UNIX terão lido um ou ambos os livros, então podem ter tirado a terminologia de lá.

Chamar de menos faz sentido, porque o personagem que você está digitando é um hífen-menos ( - ).
Um traço ( ) é mais longo.

O motivo para dizer "menos" em vez de "hífen" é provavelmente duplo:

  1. menos pessoas sabem o que é um hífen
  2. alguns utilitários aceitam opções que começam com + , por isso é lógico pensar em mais e menos

Além disso, muitos programas de processamento de texto convertem um hífen-menos duplo ( -- ) em um traço ( ), portanto dizer "traço" quando você significa "menos" pode causar confusão ao discutir as opções longas do GNU. por exemplo --help .

    
por 06.02.2011 / 10:08
33

Eu nunca vi ninguém dizer "menos" fora de um cenário matemática (significando subtrair), "traço" é apropriado e será mais comum, isso não é uma coisa do Unix, isso foi apenas essa pessoa. Nós temos outra linguagem, por exemplo, #! é pronunciado shebang .

Aqui está um link para o atual Jargon File para ASCII e como eles são ditos

    
por 18.09.2010 / 20:39
23

Eu aprendi o Unix no AT & T System V days (1990), e foi assim: rm -rf /bin/nessus-fetch.rc foi falado como: arr emm minus arr eff barra oblíqua barra nessus traço buscar ponto rc onde um menos era um indicador de argumento e um traço fazia parte de um diretório ou nome do arquivo

Eu já ouvi muito menos no meu tempo e, geralmente, as pessoas do painel eram novatos, noo abelhas pronunciadas: -)

WAR

    
por 08.10.2010 / 23:43
12

Bem, para mim "menos" é mais natural, provavelmente porque eu não sou um falante nativo de inglês. Minha língua nativa em húngaro, e menos = minusz, mas hífen = valasztojel, obviamente "menos" é mais fácil e mais curto. No entanto, eu moro na Romênia, e menos = menos, mas o hífen e o traço não têm sequer uma tradução de uma só palavra, então eles seriam muito tediosos de usar.

    
por 25.09.2010 / 23:28
9

A única vez que uso ou ouço menos em vez de traço é ao usar chmod para remover uma determinada permissão, por exemplo,

chmod -x script.sh

como a ação em questão pode ser considerada subtração.

    
por 20.09.2010 / 17:07
6

Acredito que me qualifico como chefe Unix e digo dash porque tem menos sílabas do que menos ou hífen.

Eu gostaria de ler rm -rf / como "rum ruff slash", mas temo que quase ninguém possa me entender.

    
por 10.12.2010 / 10:41
5

Sou principalmente um cara do Windows (não desista de votar aqui!) e normalmente digo "hífen".

Eu acho que é apenas a sua experiência com as pessoas com quem você lida e como elas foram criadas. Nada específico sobre seu histórico de computadores.

    
por 19.09.2010 / 00:57
5

Muitas pessoas realmente dizem " tack ". (Estou assistindo a um vídeo do Hak5 agora, e o host continua dizendo "tack").

As outras pronúncias mais comuns são "traço" e "hífen".

Eu nunca ouvi um Unix ou Linux dizer "menos" em um contexto de linha de comando.

    
por 19.09.2010 / 02:12
5

Would be said "arr em minus arr ef slash" as opposed to "arr em dash arr ef slash".

Why is this?

Acho que isso pode ser regional ou relacionado à idade mais do que qualquer outra coisa. Todos disseram que menos quando eu estava na Uni. ... mas nesse momento todos os teclados tinham um bloco numérico, à direita, que tinha + - * / etc.

    
por 20.09.2010 / 17:56
4

Eu tenho usado o Unix e o GNU / Linux há muitos anos, e falo bastante sobre operadores de linha de comando em voz alta e nunca ouvi ninguém dizer "menos". Na verdade, nem sempre costumamos dizer "traço". Se eu estiver falando com alguém e o contexto estiver claro, vou apenas falar as letras da opção; usando seu exemplo

rm -rf /

seria pronunciado "arr em arr eff slash". Claro, isso não é algo que eu costumo dizer a alguém como fazer, então seria mais como

rm -rf *

pronunciado "arr em arr eff star". Às vezes eu digo o traço, como

sudo yum -y update

Eu diria "soo dough yum dash porque atualizar."

    
por 21.09.2010 / 16:01
3

Eu participei de três classes Linux da Red Hat e dois dos três instrutores usaram o termo "tack" exclusivamente quando se referiam a hífens na linha de comando. O outro instrutor disse que ele usou "dash" porque ele não queria nos confundir usando "tack".

De Allied Procedimentos Flaghoist , nós saiba que a palavra "tack" é um termo militar que é a abreviação de "Tackline" (usado para conectar sinalizadores para sinalização de envio para navio) e é representado como um hífen em código escrito:

"Uma linha de chegada é uma extensão de adriça de aproximadamente 6 pés de comprimento; o comprimento exato depende do tamanho das bandeiras em uso. A linha de ataque é transmitida e falada como aderência e é escrita como um traço (hífen)" - ". é usado para evitar a ambiguidade. Ele separa os sinais ou grupos de numerais que, se não forem separados, podem transmitir um significado diferente daquele pretendido. "

Pessoalmente, acho a palavra "tack" mais eficiente porque é muito rápido dizer ou pensar. Como "traço", a aderência é apenas uma sílaba. No entanto, como outros apontaram, o "traço" é tecnicamente incorreto porque na verdade são duas tachas ou hifens "-".

    
por 22.03.2012 / 07:16
2

Eu tenho trabalhado em unix desde 1987 (BSD, SunOS, Solaris, IRIX, Unicos, Linux) em vários lugares do país (EUA) e quase sempre ouvi o caractere "-" chamado de traço. Eu mesmo costumo dizer traço. Uma exceção é quando se diz "kill -9": só ouvi isso como "kill minus 9". Eu não sei porque tem sido assim, mas essa tem sido a minha experiência. Eu também notei que várias regiões têm linguagem diferente para algumas coisas tecnológicas. Isso causou pesar (pensei que estúpido porque não sei o que algo é (eu mesmo assim como os outros) e muitas risadas. - De modo geral, menos sílabas normalmente requerem menos processamento cognitivo para alcançar entendimento. em> traduzir em mais trabalho em menos tempo - mas isso é provavelmente um seque em outra lata de vermes.

    
por 24.10.2011 / 21:00
1

No Windows, muitas opções de linha de comando são / (por exemplo, dir /? ), então dizer que dash pode ser facilmente confundido com slash .... o que é exatamente como muitos comandos no Windows quando você instalou algum recurso útil. ferramentas de linha de comando unix-y - eu continuo esquecendo quais usam / e quais usam -!

    
por 09.12.2010 / 20:29
0

Existem casos em que a linha de comando + e - definitivamente serve para indicar uma subtração ou adição de algo, como

diff -w

ou

emacs +30
    
por 09.10.2010 / 06:36
0

Estou surpreso que não haja uma resposta definitiva aqui. Alguém deveria fazer alguns spelunking históricos e descobrir isso. Onde e quando as tradições "menos" ou "traço" começaram? Bom tema de tese: -)

Eu peguei dizendo "menos" de um monte de hackers do kernel que eu trabalhei em uma determinada empresa que tinha um sistema operacional que incluía grandes partes do BSD (que seria maçã). Eu sempre achei que ele tropeçou na língua com muito mais facilidade do que um traço.

Se eu tiver um nome de arquivo com um "-" nele eu nunca o chamaria de minus, eu chamaria de traço. Assim, posso facilmente diferenciar na conversa entre a parte de argumentos de um comando e a parte do nome do arquivo.

É muito raro incluir expressões aritméticas em comandos shell, então a confusão com a matemática parece improvável.

Com base nas outras respostas aqui, parece que as pessoas que são gurus antigos do UNIX, ou como eu, andam por aí com gurus do UNIX antigos, estão mais para dizer "menos". Assim, minha suspeita de que há uma história histórica interessante aqui.

    
por 06.02.2011 / 09:27
0

Acho que o principal motivo aqui é porque você realmente precisa usar um caractere de menos ( - unicode 2212) para especificar opções.

O N-dash ( unicode 2013) não será selecionado pelo comando rm.

Não sei como isso funciona no Windows.

Mas eu já vi usuários linux expirienced dizer traço em vez de menos (e eu costumava cometer o erro eu mesmo), principalmente influenciado por t música" kill dash nine "da Monzy

Mais sobre a diferença entre um traço e um sinal de menos

    
por 31.01.2014 / 11:49