Укажите версию python с отступлением в grunt exec - PullRequest
0 голосов
/ 01 апреля 2020

У меня есть Gruntfile с grunt-exe c, заданным следующим образом:

exec: {
      python_command: {
        cwd: "../../",
        command: 'python3.7 -c "MY_PYTHON_CODE"'

Я хочу использовать python3 .7, если он существует в системе, но в противном случае вернусь к использованию python3. Какой самый простой способ сделать это?

1 Ответ

1 голос
/ 01 апреля 2020

Вы можете проверить $ PATH, если хотите написать al oop.

Это в основном звучит как вопрос bash: как мне найти, если cmd1 или cmd2 доступны?

Если вы хотите назначить переменную "cmd", тогда which ваш друг:

$ which xxx || which yyy || which python3.7 || which python3
/usr/bin/python3.7

Если вы готовы жить с некоторым шумом stderr , тогда это работает:

$ python3.7 -c 'print(1)' || python3 -c 'print(1)'

Или уберите шум, если вы уверены, что не увидите других ошибок:

$ python3.7 -c 'print(1)' 2> /dev/null || python3 -c 'print(1)'

$ (python3.7 -c 'print(1)' 2>&1 || python3 -c 'print(1)') | grep -v 'command not found'
...