“O comando shuf é útil para embaralhar linhas de entrada aleatoriamente para saída padrão. O comando shuf recebe a entrada de arquivos ou a entrada padrão, randomiza a entrada e fornece saída. Funciona como você embaralha e puxa uma saída aleatória ou organiza aleatoriamente os cartões, dependendo das opções que você dá.
O shuf funciona de três maneiras. Você pode usá -lo como intervalo, listar ou arquivar shuf. Vamos ver as várias maneiras pelas quais você pode usar o comando shuf.”
Usando o comando shuf bash shuf
O shuf faz parte do GNU CoreUtils e você pode abrir sua página de ajuda para ver as várias opções que você pode usar.
Se você executar o comando shuf sem argumento, ele espera entradas na linha de comando. Depois de pressionar Ctrl + d, fornece a saída randomizada de sua entrada. Dê uma olhada na imagem abaixo, mostrando como isso funciona em ação.
Além disso, você pode combinar shuf, canalizando a saída de outro comando. Por exemplo, você pode embaralhar a listagem de arquivos no diretório atual usando ls.
Na saída acima, observe como o uso do SHUF randomiza a lista do conteúdo do nosso diretório atual.
1. Usando o shuf como um arquivo
Suponha que você tenha um arquivo que deseja randomizar. Você pode usar o comando shuf seguido pelo arquivo que deseja embaralhar. Nesse caso, o conteúdo do arquivo será embaralhado e a saída será exibida na saída padrão.
Você pode usar a sintaxe abaixo.
$ shuf-name de arquivoNo exemplo acima, estamos embaralhando todas as linhas no arquivo. No entanto, usando o -n Bandeira, você pode adicionar o número de linhas que deseja embaralhar. Vamos randomizar três linhas e ver qual saída obtemos.
$ shuf -n 3 nome de arquivoObserve como, a cada shuffle, estamos obtendo saída aleatória.
2. Usando o shuf como um intervalo
Você pode embaralhar entradas em um determinado intervalo. Você só precisa adicionar o limite inferior e superior. Shuf então randomizará a entrada no intervalo dado, desde que você adicione o -eu opção.
Vamos ter um exemplo de randomizar números de 11 a 19. Para isso, vamos executar o comando abaixo.
$ shuf -i 11-19Se você quisesse obter apenas uma saída da faixa randomizada, você pode usar o -n como mostrado abaixo.
$ shuf -i 11-19 -N 1Com o -n, você só pode obter uma saída única. No entanto, adicione o sinalizador -r se desejar permitir a repetição de saída randomizada. Dessa forma, você está possibilitando que a saída seja o mesmo valor ao exibir mais de uma linha.
Aqui está um exemplo de embaralhar um intervalo e permitir a exibição de três saídas que podem ser repetitivas.
3. Usando Shuf como uma lista
Quando você quiser adicionar argumentos como uma lista no seu comando shuf, use o -e opção. Os argumentos que seguem o -e serão tratados como a entrada.
Aqui está um exemplo de randomizar uma lista de números de alfabeto.
Além disso, você pode randomizar uma lista e decidir produzir apenas duas linhas de saída usando o -n Como na saída abaixo.
Escrevendo saída em um arquivo
Se você deseja salvar a saída randomizada do seu arquivo, intervalo ou lista, você pode usar o -o seguido pelo nome do arquivo de saída.
Vamos randomizar um intervalo e salvá -lo em um novo arquivo, como mostrado abaixo.
Conclusão
A troca de entradas no Linux é possível graças ao comando shuf. Este guia introduziu o comando Bash Shuf e recebeu exemplos de como usá -lo com várias opções para obter diferentes saídas. Espero que você tenha achado o artigo útil.