Lançamento do shell Bash 5.3

Após quase três anos de desenvolvimento, uma nova versão do interpretador de comandos GNU Bash 5.3 foi lançada, sendo esta a versão padrão na maioria das distribuições Linux. Simultaneamente, foi feito o lançamento da biblioteca readline 8.3, utilizada no bash para o gerenciamento da edição da linha de comando.

As principais melhorias incluem:

  • Novas formas de substituição de comandos «${ command; }» e «${|command;}» foram implementadas, permitindo capturar a saída de um comando sem criar um processo filho separado e sem usar pipes anônimos. Os resultados da execução do comando são retornados como resultado da substituição ou armazenados na variável REPLY.
  • Uma nova variável GLOBSORT foi adicionada, que determina o método de ordenação ao completar caminhos de arquivos. Por exemplo, é possível escolher a ordenação por nome (GLOBSORT=name), tamanho (GLOBSORT=size) ou data de modificação (GLOBSORT=mtime), além de definir a ordem direta (do menor para o maior) ou inversa (do maior para o menor) da ordenação (por exemplo, com «GLOBSORT=-size» os maiores arquivos aparecerão primeiro).
  • A opção «-V varname» foi adicionada ao comando embutido «compgen» para armazenar as sugestões geradas em uma variável, em vez de enviá-las para a saída padrão.
  • A opção «-E» foi adicionada ao comando embutido «read», que utiliza a biblioteca readline com regras de autocompletar ao inserir dados.
  • A opção «-p PATH» foi adicionada ao comando embutido «source», permitindo substituir a lista de pesquisa nos caminhos de arquivos (o valor especificado é utilizado no lugar da variável $PATH).
  • O código-fonte foi adaptado para o uso do padrão C23. A possibilidade de compilação com compiladores em modo «K&R C» (estilo que corresponde à descrição da linguagem C no livro «The C Programming Language» de Kernighan e Ritchie) foi descontinuada.
  • O comando embutido «umask» agora é totalmente compatível com as especificações POSIX.
  • Foi adicionada a nova comando carregável «kv», que forma um array associativo com base em um conjunto de dados no formato «chave valor».
  • Foi adicionado o comando carregável «strptime», que converte uma representação textual de data e hora em tempo epoch (número de segundos desde 1 de janeiro de 1970).
  • Foi adicionado o comando carregável «fltexpr», que permite realizar operações aritméticas com ponto flutuante, semelhante ao comando let.
  • Foi adicionada a variável dinâmica BASH_MONOSECONDS, que contém o valor atual do relógio monotônico do sistema, que aumenta continuamente, mesmo quando o tempo é alterado para um valor anterior.
  • No modo POSIX, a comparação de strings no comando 'test', usando os operadores '', agora considera a localidade atual.
  • No comando 'bind -x', agora é permitido o uso de espaço para separar a tecla e o comando invocado, desde que a sequência esteja entre aspas duplas.
  • Na nova versão do Readline, foi oferecida a opção 'search-ignore-case' para pesquisar no histórico sem considerar maiúsculas e minúsculas. Adicionada a comando 'export-completions' para exportar opções de complementação de palavras para serem processadas em outros processos. Adicionada a comando 'execute-named-command' para executar um comando cujo nome é obtido da entrada padrão.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster