Самый простой способ проверить, установлена ​​ли программа командной строки? - PullRequest
1 голос
/ 09 сентября 2011

Конкретно перл. Что-то вроде

if(perl) { "You have perl installed, we may continue" }

Было бы хорошо, но он (понятно) запускает утилиту perl. Есть ли способ просто проверить, будет ли команда perl найдена в текущем контексте?

Ответы [ 2 ]

1 голос
/ 10 сентября 2011

В Windows cmd вы должны использовать команду where, которая является "эквивалентом" which в * nix.

К сожалению, вы не можете использовать его в Powershell, поскольку в Powershell where является псевдонимом для Where-Object

Однажды можно назвать его where.exe:

where.exe perl

Обратите внимание, что это основано на exe / программе, находящейся в PATH.

И Get-command - это «эквивалент» в Powershell, который, конечно, гораздо мощнее.

1 голос
/ 09 сентября 2011

В Unix вы можете запустить команду which perl, и если она что-то возвращает, вы знаете, что у вас есть действительный файл.

$ which ftp
/usr/bin/ftp
$ which noexist
which: 0652-141 There is no noexist in /usr/local/bin /usr/dlc/bin /usr/bin /etc
 /usr/sbin /usr/ucb /home/glowcoder/bin /usr/bin/X11 /sbin ..
$ 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...