Pour ceux qui ne sont pas au courant, il sl
s’agit d’un outil humoristique en ligne de commande conçu pour faire trébucher les utilisateurs s’ils se trompent ls
. Lorsqu'il est appelé, il imprime une locomotive à vapeur. Par exemple:
( ) (@@) ( ) (@) () @@ O @ O @ O
(@@@)
( )
(@@@@)
( )
==== ________ ___________
_D _| |_______/ \__I_I_____===__|_________|
|(_)--- | H\________/ | | =|___ ___| _________________
/ | | H | | | | ||_| |_|| _| \_____A
| | | H |__--------------------| [___] | =| |
| ________|___H__/__|_____/[][]~\_______| | -| |
|/ | |-----------I_____I [][] [] D |=======|____|________________________|_
__/ =| o |=-O=====O=====O=====O \ ____Y___________|__|__________________________|_
|/-=|___|= || || || |_____/~\___/ |_D__D__D_| |_D__D__D_|
\_/ \__/ \__/ \__/ \__/ \_/ \_/ \_/ \_/ \_/
Cependant, dans la page de manuel de sl
, il indique le bogue suivant:
BUGS
It rarely shows contents of current directory.
Ainsi, la question reste, y at - il des conditions, dans lesquelles en sl
fait ne montre le répertoire courant?
| | | H |__--------------------| [___] | =| |
, sl les montre.Réponses:
Autant que je sache, la seule condition dans laquelle
sl
vous affichez le répertoire actuel est lorsque vous le saisissez avec une erreur de frappels
.la source
sl
imprime une locomotive à vapeurLemma: La locomotive à vapeur contient des barres obliques:
Conclusion:
sl
ne montre jamais le répertoire en cours. CQFDla source
/
, qui ne sont pas autorisés dans les noms de fichiers Unix.mkdir -p "$(dirname "$(sl)")"
tu pourrais le fairetouch "$(sl)"
. Bien sûr, vous pouvez tester les limites de votre système d’exploitation. Et amusez-vous à nettoyer cela./
et\
, et ils signifient la même chose.H
(par exemple), alors lesl
montre bien. C'est juste que ça montre aussi beaucoup d'autres choses. :-)Voici un correctif pour résoudre ce bug :)
la source
rand()
"Retourne un nombre entier pseudo-aléatoire compris entre 0 et RAND_MAX", qui dépend de la bibliothèque, mais peut ne pas être divisible par 100.man 3 exec
: "Si l'une des fonctions exec () est renvoyée, une erreur s'est produite. La valeur de retour est -1 et la variable globale errno sera définie pour indiquer l'erreur."Vous pouvez vérifier le code source ici - https://github.com/mtoyoda/sl , hélas il n’ya pas d’autre option que celles documentées et malheureusement rien n’imprimera réellement les noms de fichiers.
Il semble donc que la réponse de @ sfyn est la bonne.
la source
Notez que la réponse de I0b0 est seulement une preuve qui
sl
n'affichera jamais tout et seulement la liste de répertoires actuelle. Cependant, dans certaines circonstances,sl
la liste de répertoires actuelle sera affichée avec des "informations" supplémentaires.Par exemple, dans un répertoire vide:
Dans les six premières lignes, le contenu du répertoire sera répertorié et, sur les 10 lignes restantes, il sera agrémenté d’une liste représentant un train (sans fumée).
la source
Je sais que Lego Stormtroopr a enregistré un ticket afin que le problème critique puisse être résolu. Qui sait combien de temps il faudra pour qu'un correctif soit déployé?
En tant que tel, j'ai fourni une solution de contournement afin de minimiser l'impact dû au problème grave. Vous pouvez créer une fonction shell
sl
qui exécuteraitsl
:Invoquant maintenant, listera
sl
sporadiquement le contenu du répertoire.la source
Si vous le renommez
ls
, cela imprimera le répertoire courant. En fait, une fois que j'ai cessé de rire de la locomotive à vapeur, je l'ai ajouté à ma liste de pseudonymes.la source
Vous pouvez toujours consulter le code source pour vous-même, et vous ne verriez jamais exécuter la
ls
commande ni afficher les répertoires.https://github.com/mtoyoda/sl
La source est plutôt simple en fait. Même si vous n'êtes "pas un codeur", vous devriez quand même être capable de comprendre l'essentiel.
Je crois que le "bug" que vous avez posté ci-dessus est vraiment en plaisanterie (et de provoquer une discussion comme celle-ci lol)
la source
Oui,
sl
agira comme si vous aviez configuré l'alias approprié dans bash ou le shell que vous utilisez!J'ai en fait plusieurs alias pour ls dont
alors merci pour la suggestion - je vais ajouter
(Non pas que je me souvienne de taper
sl
mais ensuite j'ai tendance à nousll
oulh
!)la source
Tu pourrais faire comme moi aussi ...
PS: Nous vous invitons à relancer ceci .. chercher dans "sl linux command" amène toujours ce fil, alors j’ai pensé donner une vraie réponse sur la façon dont je l’ai fait répertorier les fichiers ...
la source