Bien sûr, nous apprécions tous la liberté pour toujours. En particulier, la liberté de choix. Mais c'est parfois contraignant. Il a regardé, par exemple, dans le dossier avec la vidéo, et il y a un tas de films non traités. Sur quoi s'arrêter, que choisir ? Quelle nuisance ! Je veux juste obtenir une pièce et, par une simple coïncidence, "pile-face" résout le problème, mais, hélas, oh, je ne trouve pas de pièce de 20-30-40- ?? par les parties. Heureusement, il existe une telle pièce sous Linux. Qui s'en soucie - sous le chat.
Vous n'avez rien à installer. Tout est déjà dans n'importe quelle distribution Linux. Il s'agit de la commande shuf, un générateur de valeurs aléatoires. Vous pouvez vous familiariser pleinement avec ses fonctionnalités en tapant "man shuf", mais je vais parler de deux exemples spécifiques.
Donc, on retourne dans notre dossier avec les films (« cd / home / user / video », par exemple) et on rentre ce qui suit :
$ ls | shuf -n1
La première partie devrait déjà être familière à tout le monde, la commande ls nous donne le contenu du dossier. Ensuite, nous dirigeons la sortie de la commande ls vers la commande shuf, qui sélectionne au hasard une ligne à partir de cette sortie. C'est un fichier de tout le contenu du dossier (ou plutôt, son nom). Aléatoire. Vous n'en voulez pas un, mais un couple ou plus ? Ok, au lieu de "-n1" écrivez "-n2" ou "-n3" ou une autre valeur.
Deuxième exemple. Nous avons une liste de quelque chose en stock. Il se trouve dans un fichier texte brut. On tape dans la console :
$ cat spisok.txt | shuf -n1
Tout de même, seulement à la place du dossier, nous avons un fichier texte. La commande cat envoie le contenu du fichier au terminal et la commande shuf sélectionne une chaîne aléatoire à partir de ce contenu. C'est tout. Évidemment, vous pouvez trouver d'autres cas d'utilisation.