Как создать ls в командной строке Windows? - PullRequest
107 голосов
/ 20 февраля 2012

Я хочу использовать ls в командной строке Windows и заставить ее выполнить команду dir.

Как я могу это сделать?

Ответы [ 16 ]

224 голосов
/ 23 февраля 2013

Вы можете решить этот вопрос с помощью одной простой команды:

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

Убедитесь, что вы сначала запускаете cmd.exe как администратор, если вы используете Vista и выше

115 голосов
/ 20 февраля 2012

Вы могли бы:

  • создайте пакетный файл с именем ls.bat, и он будет содержать только команду dir
  • добавить каталог, в котором находится файл ls.bat, в переменную среды PATH

Затем вы можете выполнить ls из командной строки.

33 голосов
/ 25 апреля 2013

Это старый вопрос, но для записи:

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

Дает вам ls и многое другое!

15 голосов
/ 28 ноября 2014

Самый простой способ, который я нашел:

  1. Установка Git для Windows
  2. Добавьте каталог bin Git в переменную Path.Моя была расположена в C:\Program Files\Git\usr\bin.
  3. Запустите командную строку и наслаждайтесь ls во всей ее красе.
15 голосов
/ 20 февраля 2012

У меня есть решение, но оно грязное:

Создайте файл с именем ls.bat, содержащий только «dir».

Поместите его в C: \ windows \ system32 (или в любой каталог в PATH env var).

Это (должно) работает!

Редактировать: Что-то более последовательное: https://superuser.com/questions/49170/create-an-alias-in-windows-xp

9 голосов
/ 27 февраля 2016

Если в вашей системе установлена ​​ Node.js , вы можете установить ее из Cash , библиотеки, которую я написал для команд Linux для Windows:

npm install cash-ls -g
6 голосов
/ 20 февраля 2012

В командной строке Windows для Vista / 7 разрешены символические ссылки NTFS, запустите cmd.exe от имени администратора, а затем:

mklink ls %System%\dir.exe

Затем настройте переменную среды PATH, указав расположение только что созданной ссылки.

Если вы хотите больше, чем просто команда 'ls', вы должны изучить cygwin .

EDIT - только что понял, что dir.exe не являетсяотдельная программа, так что это на самом деле не работает.Но mklink и cygwin - это хорошие вещи, о которых нужно знать.

4 голосов
/ 18 февраля 2015

+ 1 в посте выше, предлагающем установить git для windows и добавить каталог bin к вашим переменным пути.

Еще один способ, которым я получил touch, ls и многие другие команды UNIX, работающие в cmd.exe на моих компьютерах с Windows 8 и Windows 7.

Перейдите на следующий сайт, чтобы установить Cygwin

https://www.cygwin.com/install.html

Установите 32- или 64-разрядную версию для вашей системы.Настройки и пакеты по умолчанию должны содержать все, что вам нужно, поэтому вам не нужно ничего менять, когда вы попадете на экран пакетов.

После установки скопируйте путь к папке Cygwin в переменные пути вашей среды.Например;если вы установили cygwin в C: \ Cygwin, вы добавите следующие переменные системного пути вашей среды:

; C: \ Cygwin \ bin

В моей системе я установил 64-битную версию иимя и путь к папке по умолчанию был C: \ cygwin64.Поэтому я добавил следующие переменные пути к системной среде:

; C: \ cygwin64 \ bin

Перезагрузите терминал, если он открыт.Затем введите ls, и вы увидите список каталогов.

См. Следующее, если вы не знакомы с настройкой переменных среды PATH:

Superuser Link 1

Superuser Link 2

3 голосов
/ 12 декабря 2013

my ls.bat был ниже

@dir %*

, который может передавать Cli Args

ls /b
ls /w

, поместите его в% windir% или любой каталог в вашей переменной% PATH%.

Просто убедитесь, что вы сохранили файл в кодировке ANSI:)

3 голосов
/ 20 февраля 2012

вы также можете использовать cygwin и просто использовать команду ls напрямую вместе со всеми другими инструментами командной строки unix, к которым вы могли бы привыкнуть.

...