2

Я пришел из Linux, где я привык к тому, что большинство приложений устанавливаются в /usr /bin, а мои инструменты я помещаю в ~ /bin. Это означает, что мне редко нужно изменять переменную PATH.

Поскольку я работаю разработчиком, мне нужно использовать командную строку. Я планирую использовать powershell, но ненавижу добавлять пути к PATH каждый раз, когда я устанавливаю новую утилиту (например, «java»).

Итак, каковы мои варианты, чтобы иметь тот же опыт, что и в Linux, где я устанавливаю приложение (обычно в «c:\program files\some app»), и оно доступно в моей оболочке? Что-то, что может сканировать все «c:\program files» (обычно приложения находятся либо в «c:\program files\some app», либо в «c:\program files\some app\bin»)?

2 ответа2

1

Я объединяю свои устанавливаемые окна в три категории - облегченную утилиту (большинство команд, к которой вы привыкли в linux), тяжелую (те, которые устанавливаются с небольшим количеством DLL и вспомогательных файлов, таких как Flac) и приложения.

Вы вряд ли будете вызывать большие приложения (такие как Firefox, Open Office и т.д.) из командной строки, поэтому установите их в области по умолчанию.

Затем я устанавливаю облегченные утилиты в нескольких известных местах - в основном ~/bin и c:/bin, и помещаю эти два каталога в начало пути.

Наконец, я поместил записи среднего веса в их собственный каталог в c:/apps - если вы вызываете эти программы из командной строки, чем меньше специальных символов вам нужно, тем лучше.

Я тоже использую msys. И cygwin, и msys более враждебны к файловой системе Windows, чем я хочу, но msys менее навязчив, но и менее полон.

Вероятно, ваш путь в Windows все равно будет больше, чем в Unix. У меня есть команда «path2.bat», которая запускает путь через tr, поэтому я вижу каждую запись в отдельной строке, и она заполняет экран.

0

Интересный вопрос, и я боюсь, что у меня нет отличного ответа ... но я действительно придумал эту идею:

Создайте каталог в вашем каталоге% USERPROFILE%, возможно, даже назовите его bin и добавьте ваш путь. Затем есть скрипт, который вы можете запустить, который "строит" кучу жестких ссылок на исполняемые файлы в каталоге ваших программных файлов ....

gci -r -include *.exe 'C:\Program Files' | % { fsutil hardlink create "C:\Users\Ittay\bin\$_.Name" "$_.FullName" }

С этим есть несколько проблем, таких как полное отсутствие обработки коллизий, для 64-битных систем вам потребуются каталоги «Program Files» и «Program Files (x86)», жесткие ссылки также доступны только на томах NTFS ... и Конечно, если что-то изменит содержимое вашего каталога bin, это может отразить эти изменения в ваших программах (хотя простое удаление будет безопасным). И, вероятно, многое, многое другое. Может быть, кто-то еще может использовать это как отправную точку для чего-то великого?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .