Что такое Windows-эквивалент / usr / bin и т. Д. [Закрыто]

Возможно, это не лучшее место для публикации этого, но мой вопрос задает своего рода противоположность Что такое Linux-эквивалент Windows? Программные файлы? .

Я новичок в Windows и привык к файловой системе в стиле unix, где есть определенные папки для определенных типов файлов. Мне интересно, какой обычный способ установки программ в Windows, особенно тех, которые будут запускаться из командной строки.

До сих пор я добавлял переменные среды пользователя для каждой программы и добавлял эту переменную в PATH. Итак, для gvim я бы добавил

GVIM_HOME

, а затем добавил к моему пути:

%PATH%;%GVIM_HOME%

Но теперь мне интересно, нужно ли мне просто создать папку и добавить ее в путь, а затем поместить в нее ярлыки для моего exe-файла папка. Кто-нибудь из вас знает, как это делается обычно?

4
задан 13 April 2017 в 15:24

2 ответа

Очень интересно знать, что вы начали с Unix :-)

Как правило, каталоги / папки в Windows организованы не так, как в Unix / Linux. У меня обычно есть системный раздел, где я устанавливаю саму Windows и мои приложения, и раздел «Данные», где я храню свои собственные данные. В Post-XP Windows это может быть немного сложнее, но все, что вы открываете и закрываете, может храниться в разделе данных.

Вернемся к системному разделу. По умолчанию для установки любых программ указано «C: / Program Files» или что-то еще, что установщики сами определят. В разделе «Program Files» находятся программы, документы и все вспомогательные файлы для запуска программ. Но для таких программ, как GVIM, я бы предложил вам поместить его в C: / и использовать путь без пробелов. И тогда вы обновляете% PATH. Вот так я устанавливаю Perl и другие чистые инструменты командной строки, которые более популярны в мире Unix. Или, чтобы быть более организованным, вы можете создать папку типа C: / cmdtools и поместить туда программы, которые вы устанавливаете вручную.

0
ответ дан 13 April 2017 в 15:24

AFAIK нет «обычного способа» сделать это, главным образом потому, что в (не серверном) мире Windows программы предназначены для запуска через пользовательский интерфейс. Но я только что проверил переменную% PATH% соседнего окна Windows, и в нем есть миллионы различных путей, так что это, вероятно, самое распространенное поведение.

Это также хорошая идея, потому что ярлыки Windows работают не так, как * nix soft symlinks. Это настоящие файлы на диске (.lnk), а не ссылки на другие места в файловой системе. У вас может быть каталог, полный ярлыков, и вы можете вызывать их из cmd.exe (например, c:\>program.lnk будет запускать c:\foo\program.exe), но у каждого ярлыка есть параметр, который сообщает c:\foo\program.exe каталог, в котором он должен начинаться его исполнение. Это не похоже на $ PWD или / proc / [pid] / cwd в * nix. Очень важно не ошибиться, потому что это влияет на такие вещи, как загрузка DLL.

(также мне кажется, что необходимость звонить по foo.lnk из CLI вместо просто foo кажется мне глупой).

В любом случае, это мой опыт работы с XP Pro. YMMV с более новыми версиями Windows и командными оболочками.

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: