127 votes

Comment créer ls dans l'invite de commande de Windows ?

Je veux utiliser ls dans l'invite de commande de Windows et lui faire exécuter la commande dir.

Comment puis-je faire ça ?

4 votes

Certaines des réponses sont assez intéressantes, mais qu'est-ce qui ne va pas avec la commande 'dir' ?

3 votes

@MattDonnan Je suis juste habitué à ls et je fais un drôle visage quand je le fais sur Windows. Plus maintenant ^^

0 votes

@aF Si vous voulez ls, pourquoi ne pas utiliser le vrai ls ?

300voto

secghost Points 341

Vous pouvez résoudre cette question avec une simple commande :

echo @dir %* > %systemroot%\system32\ls.bat

Assurez-vous que vous exécutez cmd.exe en tant qu'administrateur d'abord si vous êtes sur vista et up

17 votes

J'aimerais pouvoir le noter plus d'une fois. Il a fonctionné à merveille.

5 votes

C'est mieux parce que vous pouvez toujours utiliser les options de dir.

0 votes

Je recommande echo dir %1 /B > %systemroot%\system32\ll.bat pour une liste simple car j'utilise ll plus souvent que ls .

122voto

hmjd Points 76411

Tu pourrais :

  • créer un fichier batch appelé ls.bat et qu'il contienne le dir commande uniquement
  • ajoutez le répertoire où le ls.bat existe dans votre PATH variable d'environnement

Vous pourriez alors exécuter ls à partir d'une invite de commande.

8 votes

Pourquoi ne pas mettre le ls.bat dans le dossier system32 pour ne pas avoir à ajouter le PATH

2 votes

@DavidWong, il est très possible que l'utilisateur n'ait pas accès en écriture à ce dossier.

2 votes

Cela fonctionne-t-il toujours si vous l'utilisez avec args : ls dir ? Je pense que vous devriez modifier le ls.bat pour gérer les args... ou vous pouvez essayer les alias : superuser.com/questions/49170/create-an-alias-in-Windows-xp

42voto

Simon Pickles Points 580

C'est une vieille question, mais pour mémoire :

http://gnuwin32.sourceforge.net/packages/coreutils.htm

Vous donne les ls et bien plus encore !

8 votes

+1 ls * y dir * ne font pas la même chose, donc l'aliasing dir est un peu pants.

3 votes

C'est la meilleure réponse. Ignorez le vote et faites ceci.

3 votes

N'oubliez pas d'ajouter C:\Program Files (x86)\GnuWin32\bin à votre chemin

17voto

STM Points 486

J'ai une solution mais c'est sale :

Créez un fichier nommé ls.bat contenant uniquement "dir".

Mettez-le dans C:\windows\system32 (ou tout autre répertoire dans la var. env. PATH).

Cela (devrait) fonctionner !

Edit : Quelque chose de plus cohérent : https://superuser.com/questions/49170/create-an-alias-in-Windows-xp

6voto

buster Points 816

L'invite de commande de Windows pour Vista/7 autorise les liens symboliques NTFS, exécutez cmd.exe en tant qu'administrateur :

mklink ls %System%\dir.exe

Configurez ensuite votre variable d'environnement PATH pour y inclure l'emplacement du lien que vous venez de créer.

Si vous voulez plus que la simple commande 'ls', vous devriez regarder dans cygwin .

EDIT- Je viens de réaliser dir.exe n'est pas un programme distinct, donc cela ne fonctionne pas vraiment. Mais mklink et cygwin sont des choses qu'il est bon de connaître.

0 votes

+1, j'ai oublié de dire que c'était Windows xp mais c'est bon pour Windows vista/7 :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X