Algumas semanas atrás, participei de uma palestra no Git por alguém que parecia pertencer a um plano de fundo do Windows. Eu digo "parecia ser" porque ele continuava dizendo "traço" quando se referia às opções da linha de comando. Lembrei-me de algo que achei curioso nos meus primeiros dias de aprendizado do Linux; isto é, ao se referir às opções, o chefe do Unix sempre dizia "menos". Isso é:
rm -rf /var/tmp/bogus/junk
Seria dito "arr em menos arr ef" em oposição a "arr em dash arr ef".
Por que é isso?
conventions
Eric Smith
fonte
fonte
-
seja um dos tópicos abordados)minus
antes, mas eu gosto da sensação superior que a acompanha. Estou mudando minha linguagem paraminus
Respostas:
Dois dos livros UNIX mais importantes, O ambiente de programação UNIX e A linguagem de programação C, ambos se referem a ele como menos.
O ambiente de programação Unix, página 13 :
A linguagem de programação C, 2ª edição, página 116 :
Muitos usuários do UNIX leram um ou ambos os livros, portanto, podem ter adotado a terminologia a partir daí.
Chamá-lo de menos faz sentido, porque o caractere que você está digitando é um hífen-menos (
-
).Um traço (
—
) é mais longo.A razão para dizer "menos" em vez de "hífen" é provavelmente dupla:
+
, por isso é lógico pensar em mais e menosAlém disso, muitos programas de processamento de texto convertem um hífen-menos (
--
) duplo em um hífen (—
), então dizer "hífen" quando você quer dizer "menos" pode causar confusão ao discutir opções longas do GNU, por exemplo--help
.fonte
Eu nunca vi alguém dizer "menos" fora de um cenário de matemática (para significar subtrair), "traço" é apropriado e será mais comum, isso não é coisa do Unix, era apenas essa pessoa. Temos outro jargão, por exemplo,
#!
é pronunciado shebang .Aqui está um link para o atual Jargon File for ASCII e como eles são ditos
fonte
#
e, graças ao INTERCAL, só consigo pensar no%
operador Python como "misturar". jargon.net/jargonfile/a/ASCII.html♯
,#
é hash (não que alguém se importe;)).Eu aprendi o Unix nos dias AT&T System V (1990), e foi assim: rm -rf /bin/nessus-fetch.rc foi falado como: arr emm menos arr eff slash bin slash nessus traço buscar ponto rc onde um sinal de menos era um indicador de argumento e um traço fazia parte de um diretório ou nome de arquivo
Ouvi muitos pontos negativos no meu tempo e, geralmente, as pessoas que traçavam eram novatas, pronunciavam noo abelhas :-)
GUERRA
fonte
-r
em um arquivo é bobo e, especialmente, junto com-f
é perigoso se você cometer um erro. por exemplorm -rf /bin/ nessus-fetch.rc
. Opa!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 = menos, mas hífen = valasztojel, obviamente "menos" é mais fácil e mais curto. No entanto, eu moro na Romênia e menos = menos, mas hífen e hífen nem sequer têm uma tradução de uma palavra, portanto, seria muito tedioso de usar.
fonte
A única vez em que uso ou escuto menos, em vez de traço, é quando uso o chmod para remover uma certa permissão, por exemplo
como a ação em questão pode ser considerada subtração.
fonte
comm
é outra exceção . Você "menos 2" para ignorar as linhas que estão apenas em arquivo 2, etc.Eu uso o Unix e o GNU / Linux há muitos anos, e falei sobre operadores de linha de comando em voz alta e nunca ouvi alguém dizer "menos". De fato, nem costumamos dizer "traço". Se estiver conversando com alguém e o contexto estiver claro, falarei apenas as letras da opção; usando seu exemplo
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
pronunciado "arr em arr eff estrela". Às vezes eu digo o traço, como
Eu diria "soo dum yum dash por que atualizar".
fonte
sudo make me some dough so you can bake bread for my sandwich
?Acredito que me qualifico como chefe do Unix e digo traço porque tem menos sílabas que menos ou hífen.
Eu gostaria de ler
rm -rf /
como "barra de rum ruff", mas temo que quase ninguém me entenda.fonte
Eu sou principalmente um cara do Windows (não me vote 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 o fundo de seus computadores.
fonte
-
? Sempre que eu mudo para o Windows (e infelizmente isso ocorre), sempre fico gritado porque apenas alguns programas realmente usam-
para delimitar argumentos. O Windows usa/
, o que é ainda mais divertido (na verdade, eu nem me lembro. Talvez seja{forward slash}
). Prompt de comando--.dash
.Muitas pessoas realmente dizem " aderência ". (Estou assistindo a um vídeo do Hak5 no momento e o host continua dizendo "aderência").
As outras pronúncias mais comuns são "hífen" e "hífen".
Eu nunca ouvi um cara de Unix ou Linux dizer "menos" em um contexto de linha de comando.
fonte
Eu acho que isso pode ser regional ou relacionado à idade mais do que qualquer outra coisa. Todo mundo disse menos quando eu estava na Uni. ... mas nesse momento todos os teclados tinham um teclado numérico, à direita, que tinha + - * / etc.
fonte
Eu participei de três aulas de Linux da Red Hat e dois dos três instrutores usaram o termo "tack" exclusivamente ao se referir a hífens na linha de comando. O outro instrutor disse que usou "dash" porque não queria nos confundir usando "tack".
De Allied Flaghoist Procedures , aprendemos que a palavra "tack" é um termo militar abreviado para "Tackline" (usado para conectar sinalizadores para sinalização de navio a navio) e é representado como um hífen no código escrito:
"Um tackline é um comprimento de adriça de aproximadamente 6 pés; o comprimento exato depende do tamanho das bandeiras em uso. O tackline é transmitido e falado como tack e escrito como um hífen (hífen)" - ". É usado para evitar ambiguidade. Separa sinais ou grupos de numerais que, se não forem separados, podem transmitir um significado diferente do pretendido. "
Pessoalmente, acho a palavra "aderência" mais eficiente, porque é muito rápido dizer ou pensar. Como "dash", o tack é apenas uma sílaba. No entanto, como outros já apontaram, o "traço" é tecnicamente incorreto porque na verdade são duas tachas ou hífens "-".
fonte
Trabalho no 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 hífen. Eu mesmo costumo dizer traço. Uma exceção é quando se diz "kill -9": só ouvi isso como "kill menos 9". Não sei por que tem sido assim, mas essa tem sido minha experiência. Também notei que várias regiões têm uma linguagem distintamente diferente para algumas coisas da tecnologia. Causou pesar (considerado estúpido porque não sabe o que é algo (tanto eu quanto os outros)) e muitas risadas.— De um modo geral, menos sílabas normalmente requerem menos processamento cognitivo para alcançar a compreensão.
fonte
No Windows, muitas opções de linha de comando são / (por exemplo,
dir /?
) dizendo que o traço pode facilmente ser confundido com a barra .... que é exatamente como muitos comandos no Windows quando você instala algumas ferramentas úteis da linha de comando unix-y - Eu continuo esquecendo quais usam / e quais usam -!fonte
Há casos em que a linha de comando + e - são definitivamente destinadas a indicar uma subtração ou adição de algo, como
ou
fonte
diff -w
um caso em que-
deve indicar subtração?diff -w file-a file-b
fornece a diferença entre dois arquivos sem considerar o espaço em branco.Estou surpreso que não haja uma resposta definitiva aqui. Alguém deve fazer spelunking histórico e descobrir isso. Onde e quando começaram as tradições "menos" ou "traço"? Bom tópico da tese :-)
Eu peguei dizendo "menos" de um monte de hackers do kernel com os quais trabalhei em uma certa empresa que tinha um sistema operacional que incluía grandes partes do BSD (que seria a apple). Eu sempre achei que ele tropeçou na língua com muito mais facilidade do que correr.
Se eu tiver um nome de arquivo com um "-", nunca o chamaria de menos, chamaria de traço. Assim, posso diferenciar facilmente na conversa entre a parte dos argumentos de um comando e a parte do nome do arquivo.
É muito raro incluir expressões aritméticas nos comandos do shell, portanto, a confusão com a matemática parece improvável.
Com base nas outras respostas aqui, parece que as pessoas que são gurus do UNIX dos velhos tempos, ou como eu andam com gurus do UNIX dos velhos tempos, são mais como dizer "menos". Assim, minha suspeita de que haja uma história histórica interessante aqui.
fonte
Eu 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á capturado pelo comando rm.Não tenho certeza de como isso funciona no Windows.
Mas eu já vi usuários Linux experientes dizerem traço em vez de menos (e eu costumava cometer o erro), principalmente influenciados pela música 'kill dash nine' de Monzy
Mais sobre a diferença entre um traço e um canto negativo
fonte
rm −i dpkg.log
(menos) dárm: cannot remove ‘−i’: No such file or directory
.Sei que esse é um tópico antigo, mas nunca vi essa explicação em nenhum outro lugar.
Eu sou bastante novo no Linux e c ++, e me disseram que "-j" é "tack j". Sem nenhuma explicação, presumi que isso significasse aderência como em "aderência". Como colocar um "j" no final do comando. ie make -j 10
Portanto, "aderência" não é necessariamente uma palavra para "-" (que eu normalmente chamaria de menos), mas uma ação realizada usando "-".
Certamente não dizer que isso é historicamente correto, mas talvez eu não seja o único a usá-lo dessa maneira.
fonte