AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / unix / Perguntas / 718673
Accepted
HippoMan
HippoMan
Asked: 2022-09-26 16:36:53 +0800 CST2022-09-26 16:36:53 +0800 CST 2022-09-26 16:36:53 +0800 CST

/bin/sort parece ignorar barras em sua entrada

  • 772

Estou executando o Ubuntu 20.0.4.

Considere este conteúdo do arquivo a seguir (suponha que o arquivo tenha o nome input) ...

/zzzzz foo bar
/hij zzz
xyz abc 
/abc 
ijk lmnop
qwer tyuiop 
abc def

Se eu executar /bin/sort input, recebo a seguinte saída ...

/abc 
abc def
/hij zzz
ijk lmnop
qwer tyuiop 
xyz abc 
/zzzzz foo bar

Como você pode ver, a barra inicial é totalmente ignorada pelo algoritmo de classificação. Não há nada na sortpágina de manual que diga algo sobre as barras sendo tratadas de qualquer forma especial.

Mas se eu substituir cada uma das barras pelo $caractere, esse comportamento não ocorre. Por exemplo, suponha que um arquivo nomeado newinputcontém esses valores ...

$zzzzz foo bar
$hij zzz
xyz abc 
$abc 
ijk lmnop
qwer tyuiop 
abc def

Em outras palavras, newinputé o mesmo que input, exceto pelo fato de que os /caracteres foram alterados para $caracteres. Quando eu faço /bin/sort newinput, eu recebo esses resultados ...

$abc 
$hij zzz
$zzzzz foo bar
abc def
ijk lmnop
qwer tyuiop 
xyz abc 

Como você pode ver, nesse caso, o $é realmente tratado como um caractere normal e classificável por /bin/sort.

Então, o que está acontecendo aqui? E como faço /bin/sortpara prestar atenção ao /personagem?

Desde já agradeço qualquer ideia e sugestão.

ATUALIZAÇÃO : Se eu fizer isso no Debian, a classificação funcionará corretamente, tanto em relação a quanto /a $.

Então, eu estou querendo saber se esse comportamento pode ser um "recurso" do Ubuntu.

sort slash
  • 1 1 respostas
  • 28 Views

1 respostas

  • Voted
  1. Best Answer
    HippoMan
    2022-09-26T16:58:54+08:002022-09-26T16:58:54+08:00

    Ah! Eu percebi!

    Na minha caixa Ubuntu, LC_ALLconfigurei para en_US.UTF8, e na minha caixa Debian, LC_ALLconfigurei para C.UTF8. Se eu mudar LC_ALLpara C.UTF8minha caixa do Ubuntu, a barra é classificada como um caractere regular. E se eu mudar LC_ALLpara en_US.UTF8a caixa Debian, as barras também serão ignoradas lá.

    Portanto, esse comportamento parece ser um artefato de en_US.UTF8codificação.

    Esse comportamento é correto para en_US.UTF8?

    De qualquer forma, agora sei como contornar esse "recurso" por uma configuração apropriada para LC_ALL.

    PS : E também, como Stephen Harris apontou acima, a configuração LANGpara Ccorrige esse problema da mesma maneira que a configuração LC_ALLpara C.UTF8.

    • 0

relate perguntas

  • Usando um único comando de linha de comando, como eu pesquisaria cada arquivo de texto em um banco de dados para encontrar as 10 palavras mais usadas?

  • A classificação numérica falha ao classificar corretamente o arquivo

  • Como classificar o número de linhas por data em um arquivo?

  • Listar arquivos classificados de acordo com a linha de conteúdo específica

  • Leia o arquivo de texto com palavras e sua contagem de ocorrências e saída de impressão classificada

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve