E foi lançado o GNU Coreutils 9.1 com melhorias, correções e muito mais. Confira as novidades e veja como instalar no Linux.
Coreutils (ou GNU Core Utilities) é um pacote de software desenvolvido pelo projeto GNU que contém várias das ferramentas básicas, como cat, ls e rm, necessárias para sistemas operacionais do tipo Unix.
É uma combinação de três pacotes anteriores: utilitários de arquivo (fileutils), utilitários de shell (shellutils) e utilitários de processamento de texto (textutils).
Os utilitários do núcleo GNU suportam opções de strings longas como parâmetros para comandos, bem como alguma permissividade na convenção para especificar opções antes de argumentos regulares (desde que a variável de ambiente POSIXLY_CORRECT esteja definida, o que permite diferentes funcionalidades no BSD).
Além disso, como a filosofia GNU usa informações de páginas man (e usa ferramentas como info), as informações fornecidas são maiores.
Há vários dias foi anunciada a disponibilidade da nova versão estável do conjunto de utilitários básicos do sistema GNU Coreutils 9.1, que inclui programas como sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls, etc.
Novidades do GNU Coreutils 9.1
Digno de nota nesta nova versão do GNU Coreutils 9.1 é que o suporte foi adicionado ao utilitário dd para nomes de opções alternativos iseek=N para skip=N e oseek=N para seek=N, que são usados na variante BSD de dd
Além disso, também é observado que no GNU Coreutils 9.1 o utilitário dd fornece uma contagem de bytes em vez de blocos se o valor do contador terminar com um caractere “B” (“dd count=100KiB”). Os sinalizadores count_bytes, skip_bytes e seek_bytes foram descontinuados.
Vale ressaltar também que foi adicionada a opção “–print-ls-colors” ao dircolors para exibir visualmente e separadamente as cores definidas na variável de ambiente LS_COLORS, além do suporte para a variável de ambiente COLORTERM também ter sido adicionado ao dircolors além do TERMO.
No GNU Coreutils 9.1, o utilitário cat implementa o uso da chamada de sistema copy_file_range, com seu suporte pelo sistema, para copiar dados entre dois arquivos apenas no lado do kernel sem transferir dados para a memória de processo do espaço do usuário.
chown e chroot fornecem um aviso ao usar a sintaxe “chown root.root f” em vez de “chown root:root f”, pois pode haver problemas em sistemas que permitem pontos em nomes de usuário).
Em ls, o realce de arquivos está desabilitado por padrão no GNU Coreutils 9.1, considerando as capacidades, pois isso leva a um aumento de carga de cerca de 30%.
Em ls e stat, as tentativas de montagem automática de arquivos são desativadas. Para montagem automática, você deve especificar explicitamente a opção “stat –cached=never
Nos utilitários cp, mv e install, agora é possível usar as chamadas de sistema openat* ao copiar para um diretório para melhorar a eficiência e evitar possíveis condições de corrida.
No GNU Coreutils 9.1 para macOS, o utilitário cp agora cria um clone de cópia na gravação de um arquivo se os arquivos de origem e destino estiverem no mesmo APFS e o arquivo de destino não existir. Ao copiar, o modo de acesso e a hora também são preservados (como quando ‘cp -p’ e ‘cp -a’ são executados).
Das outras mudanças que se destacam nesta nova versão:
- printf fornece suporte para impressão de valores numéricos em caracteres multibyte.
- “sort –debug” implementou diagnóstico para problemas com caracteres no parâmetro “–field-separator” conflitantes com caracteres que podem ser usados em números.
- A opção ‘–resolução’ foi adicionada ao utilitário ‘data’ para exibir dados sobre a precisão do rastreamento de tempo.
- chmod -R não sai mais com um status de erro ao encontrar links simbólicos. Todos os arquivos seriam processados com sucesso, mas o status de saída estava errado.
- O cksum não permite mais nomes de algoritmos abreviados, melhorando assim a compatibilidade com versões anteriores e a robustez.
- As compilações do AIX não falham mais porque algumas funções da biblioteca estão ausentes.
Para saber mais sobre essa versão do GNU Coreutils, acesse a nota de lançamento.
Como instalar ou atualizar o GNU Coreutils
O GNU Coreutils faz parte da instalação padrão da maioria das distribuições Linux, e em algumas, já vem instalado. Portanto, para receber a versão mais recente desse software, basta apenas manter seu sistema atualizado ou usar a central de programas dele.