Как я могу напечатать полный путь исполняемой команды в Windows?


10

В тот момент, когда я пытаюсь запустить tfкоманду и / или любую другую команду запуска, мне нужно открыть Visual Studio Command, чтобы получить ее исполняемый файл. Мне нравится использовать обычную консоль и / или альтернативную консоль, но мне не удалось позвонить tf.

Итак, мне нужно напечатать полный путь tfи любую команду runable, но я не знаю, как это сделать.

Пожалуйста помоги.


Постер ищет эквивалент команды "which" в некоторых оболочках Unix, например, "which grep" печатает полный путь команды grep, которую оболочка выполнит в ответ на то, что вы введете "grep" без пути. Я тоже это ищу.

Ответы:


13

Я не совсем уверен, что вы спрашиваете, но, судя по вашим комментариям, вы можете искать where.

where foo

where foo | clip

Второй пример поместит весь путь в буфер обмена.

Если я правильно помню, where.exeнужно добавить в XP / 2003 из Windows 2003 Resource Kit или XP Support Tools.


2
Он поставляется с предустановленной Windows 7. Существует также скрипт для более старых версий Windows.
user1686

В UnxUtils есть также where.exe, а также множество полезных команд Unix.
Фил

@PhiLho: оригинальная версия Unix which.
парадроид

ой, where.exeживет в system32, мой плохой ... Забавно, я просто попытался найти java.exe, whereуказывает на путь JDK (который находит Windows), а whichуказывает на system32, ранее в пути. Но его там нет, там может быть жесткая ссылка или что-то подобное. Ну а вернемся к теме, whichпримерно похожей where, можно найти в бесплатном пакете.
Фил

1

Согласно Microsoft , вы должны найти tfв <drive>:\Program Files\Microsoft Visual Studio x\Common7\IDE.

(Я заменил x в версии, потому что я не знаю, какую версию вы используете.)


РЕДАКТИРОВАТЬ:

Согласно пошаговому руководству: Работа с системой управления исходным кодом Team Foundation из командной строки (и при условии VS 2005), вы можете получить доступ к инструментам для TF по следующему пути:

<drive>:\Program Files\Microsoft Visual Studio 8\Common7\Tools


@Potter: Спасибо! Как насчет других запускаемых команд, которые были добавлены в системную переменную среды PATH? Должна ли это быть быстрая команда, чтобы напечатать их полный путь?
Нам G VU

Вы конкретно говорите об исполняемых файлах Team Foundation?

@Potter: Нет. Я говорю об общей исполняемой команде.
Нам G VU

1

where.exeкак уже упоминалось в одном из комментариев, поставляется с Windows 7 и выше. Следует также отметить, что поиск выполняется where только в том %PATH%случае, если ваша программа не находится в пути, это не поможет вам найти его.

Другая проблема заключается в том, что если вы пытаетесь вызвать его из командной строки PowerShell, вам НУЖНО включить часть .exe, так как «где» - это псевдоним Where-Object, который НЕ тот, который вам нужен, и приводит к пустым результатам с коды успеха, которые явно не сообщают вам, где на самом деле находится приложение, которое вы хотите.

Это заняло у меня несколько попыток выяснить, и только добавление, -?которое вызвало помощь в том, что псевдоним действительно решил, чтобы понять меня.

По вашему вопросу, причина tfработает из приложения / консоли Visual Studio, есть специальный ярлык, который они включают для запуска консоли Visual Studio, потому что он добавляет папки приложения в PATH при запуске.

Вы можете определить свой собственный ярлык для добавления каталога программы в свой PATHили просто открыть меню «Пуск», ввести «env» и щелкнуть ярлык «Изменить переменные среды для своей учетной записи» (или системный, но для этого нужно нажать на нажмите кнопку «Переменные среды»), затем добавьте новую PATHпеременную вверху в разделе «Пользовательские переменные», если она не существует, или, если она уже существует, добавьте ;перед вашей записью, а затем укажите полный путь к папке, куда программа, которую вы хотите вызвать из команды Линия живет. Например, дважды щелкните PATHзапись (регистр не имеет большого значения для Windows), чтобы изменить и изменить ее наC:\ExistingPathItem\bin;C:\Program Files (x86)\Microsoft\Visual Studio 2020\bin

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.