Узнайте, установлена ​​ли программа из сценария Python3

Открыть открытые расширения Firefox Нажмите Получить надстройки Тип Adblock Plus в поле поиска Выберите Adblock Plus Нажмите Установить

ims http://www.go-remove-malware.com/wp-content /uploads/2014/09/firefox-menu.png

ims http://www.go-remove-malware.com/wp-content/uploads/2014/09/firefox-menu .png

Альтернатива: вы также можете использовать uBlock Origin. uBlock имеет больше возможностей настройки и использует меньше системных ресурсов.

6
задан 18 April 2011 в 18:24

40 ответов

Я бы выбрал другой подход. Чтобы проверить, доступен ли Git в данной системе, проверьте, существует ли двоичный файл git в PATH пользователя или просто попытайтесь выполнить git --version. Эта проверка будет более надежной и поддерживает людей, которые (по какой-либо причине) устанавливают Git из источника в / usr / local / bin или даже ~ / bin.

Это не прямой ответ на ваш вопрос, но я надеюсь, что это все равно поможет. Если вам нужна помощь в кодировании, что в Python, дайте мне знать, и я предоставлю более подробную информацию.

0
ответ дан 25 July 2018 в 22:11
  • 1
    Кажется разумным, но как я могу заставить python регистрировать, действительно ли git существует? – Eden Crow 19 April 2011 в 15:32
  • 2
    Попробуйте запустить его с помощью subprocess.Popen () и обработать исключение, если оно не выполнено. Я обновил свой ответ. – Egil 19 April 2011 в 16:15
  • 3
    @Egil Добро пожаловать :) – Adam Byrtek 19 April 2011 в 23:13

Вы также можете попробовать проверить вывод which.

(Может быть, это не сработает, как никто другой не предложил?)

0
ответ дан 25 July 2018 в 22:11
  • 1
    which является встроенной оболочкой, поэтому вам придется сначала порождать оболочку. – Adam Byrtek 19 April 2011 в 23:16
  • 2
    /usr/bin/which не является встроенной оболочкой, если я не ошибаюсь. – Broam 21 April 2011 в 19:27
  • 3
    Правильно, это встроенный только в Zsh (который я использую). Извини за это. – Adam Byrtek 21 April 2011 в 22:58

Вы можете использовать apt-модуль python, но он проверяет только, установлен ли пакет. Это приведет к сбою не-deb-рассылок или при установке вне диспетчера пакетов:

import apt cache = apt.Cache() cache.open() cache["git-core"].is_installed# Evaluates true if git is installed

Попробуйте запустить git и обработать исключение, если оно не выполнено:

import subprocess try: # pipe output to /dev/null for silence null = open("/dev/null", "w") subprocess.Popen("git", stdout=null, stderr=null) null.close() except OSError: print("git not found")

Третья опция было бы попробовать все пути в $PATH и проверить, есть ли у вас разрешение exec на path / git.

4
ответ дан 25 July 2018 в 22:11

Если вы хотите сделать это, вы можете сделать что-то вроде:

checkvar = 0 for line in open("filename"): if "git" in line: checkvar = checkvar + 1 print "Phrase git found ", checkvar, " times"
0
ответ дан 25 July 2018 в 22:11

Ищите установленные файлы

Предполагая, что мы знаем, где установлена ​​программа запуска или двоичная программа приложения, простой подход - просто проверить, существует ли это:

#! /usr/bin/env python3 # # Query package state by installation path import os.path path = '/usr/bin/git' def query_package(path): if os.path.exists(path): print('Git is ready to use') else: print('please install Git')

Обратитесь к DPKG

Другой способ запросить установленные пакеты, однако, - это обратиться к управлению пакетами, в нашем случае dpkg:

#! /usr/bin/env python3 # # Query package state by dpkg status import subprocess package = 'git' def query_package(package): status = subprocess.getstatusoutput("dpkg-query -W -f='${Status}' " + package) if not status[0]: print(status[1]) # package is installed else: print(status[1])
1
ответ дан 25 July 2018 в 22:11

Я бы выбрал другой подход. Чтобы проверить, доступен ли Git в данной системе, проверьте, существует ли двоичный файл git в PATH пользователя или просто попытайтесь выполнить git --version. Эта проверка будет более надежной и поддерживает людей, которые (по какой-либо причине) устанавливают Git из источника в / usr / local / bin или даже ~ / bin.

Это не прямой ответ на ваш вопрос, но я надеюсь, что это все равно поможет. Если вам нужна помощь в кодировании, что в Python, дайте мне знать, и я предоставлю более подробную информацию.

0
ответ дан 26 July 2018 в 19:35
  • 1
    Кажется разумным, но как я могу заставить python регистрировать, действительно ли git существует? – Eden Crow 19 April 2011 в 15:32
  • 2
    Попробуйте запустить его с помощью subprocess.Popen () и обработать исключение, если оно не выполнено. Я обновил свой ответ. – Egil 19 April 2011 в 16:15
  • 3
    @Egil Добро пожаловать :) – Adam Byrtek 19 April 2011 в 23:13

Вы также можете попробовать проверить вывод which.

(Может быть, это не сработает, как никто другой не предложил?)

0
ответ дан 26 July 2018 в 19:35
  • 1
    which является встроенной оболочкой, поэтому вам придется сначала порождать оболочку. – Adam Byrtek 19 April 2011 в 23:16
  • 2
    /usr/bin/which не является встроенной оболочкой, если я не ошибаюсь. – Broam 21 April 2011 в 19:27
  • 3
    Правильно, это встроенный только в Zsh (который я использую). Извини за это. – Adam Byrtek 21 April 2011 в 22:58

Вы можете использовать apt-модуль python, но он проверяет только, установлен ли пакет. Это приведет к сбою не-deb-рассылок или при установке вне диспетчера пакетов:

import apt cache = apt.Cache() cache.open() cache["git-core"].is_installed# Evaluates true if git is installed

Попробуйте запустить git и обработать исключение, если оно не выполнено:

import subprocess try: # pipe output to /dev/null for silence null = open("/dev/null", "w") subprocess.Popen("git", stdout=null, stderr=null) null.close() except OSError: print("git not found")

Третья опция было бы попробовать все пути в $PATH и проверить, есть ли у вас разрешение exec на path / git.

4
ответ дан 26 July 2018 в 19:35

Если вы хотите сделать это, вы можете сделать что-то вроде:

checkvar = 0 for line in open("filename"): if "git" in line: checkvar = checkvar + 1 print "Phrase git found ", checkvar, " times"
0
ответ дан 26 July 2018 в 19:35

Ищите установленные файлы

Предполагая, что мы знаем, где установлена ​​программа запуска или двоичная программа приложения, простой подход - просто проверить, существует ли это:

#! /usr/bin/env python3 # # Query package state by installation path import os.path path = '/usr/bin/git' def query_package(path): if os.path.exists(path): print('Git is ready to use') else: print('please install Git')

Обратитесь к DPKG

Другой способ запросить установленные пакеты, однако, - это обратиться к управлению пакетами, в нашем случае dpkg:

#! /usr/bin/env python3 # # Query package state by dpkg status import subprocess package = 'git' def query_package(package): status = subprocess.getstatusoutput("dpkg-query -W -f='${Status}' " + package) if not status[0]: print(status[1]) # package is installed else: print(status[1])
1
ответ дан 26 July 2018 в 19:35

Я бы выбрал другой подход. Чтобы проверить, доступен ли Git в данной системе, проверьте, существует ли двоичный файл git в PATH пользователя или просто попытайтесь выполнить git --version. Эта проверка будет более надежной и поддерживает людей, которые (по какой-либо причине) устанавливают Git из источника в / usr / local / bin или даже ~ / bin.

Это не прямой ответ на ваш вопрос, но я надеюсь, что это все равно поможет. Если вам нужна помощь в кодировании, что в Python, дайте мне знать, и я предоставлю более подробную информацию.

0
ответ дан 2 August 2018 в 03:40
  • 1
    Кажется разумным, но как я могу заставить python регистрировать, действительно ли git существует? – Eden Crow 19 April 2011 в 15:32
  • 2
    Попробуйте запустить его с помощью subprocess.Popen () и обработать исключение, если оно не выполнено. Я обновил свой ответ. – Egil 19 April 2011 в 16:15
  • 3
    @Egil Добро пожаловать :) – Adam Byrtek 19 April 2011 в 23:13

Вы также можете попробовать проверить вывод which.

(Может быть, это не сработает, как никто другой не предложил?)

0
ответ дан 2 August 2018 в 03:40
  • 1
    which является встроенной оболочкой, поэтому вам придется сначала порождать оболочку. – Adam Byrtek 19 April 2011 в 23:16
  • 2
    /usr/bin/which не является встроенной оболочкой, если я не ошибаюсь. – Broam 21 April 2011 в 19:27
  • 3
    Правильно, это встроенный только в Zsh (который я использую). Извини за это. – Adam Byrtek 21 April 2011 в 22:58

Вы можете использовать apt-модуль python, но он проверяет только, установлен ли пакет. Это приведет к сбою не-deb-рассылок или при установке вне диспетчера пакетов:

import apt cache = apt.Cache() cache.open() cache["git-core"].is_installed# Evaluates true if git is installed

Попробуйте запустить git и обработать исключение, если оно не выполнено:

import subprocess try: # pipe output to /dev/null for silence null = open("/dev/null", "w") subprocess.Popen("git", stdout=null, stderr=null) null.close() except OSError: print("git not found")

Третья опция было бы попробовать все пути в $PATH и проверить, есть ли у вас разрешение exec на path / git.

4
ответ дан 2 August 2018 в 03:40

Если вы хотите сделать это, вы можете сделать что-то вроде:

checkvar = 0 for line in open("filename"): if "git" in line: checkvar = checkvar + 1 print "Phrase git found ", checkvar, " times"
0
ответ дан 2 August 2018 в 03:40

Ищите установленные файлы

Предполагая, что мы знаем, где установлена ​​программа запуска или двоичная программа приложения, простой подход - просто проверить, существует ли это:

#! /usr/bin/env python3 # # Query package state by installation path import os.path path = '/usr/bin/git' def query_package(path): if os.path.exists(path): print('Git is ready to use') else: print('please install Git')

Обратитесь к DPKG

Другой способ запросить установленные пакеты, однако, - это обратиться к управлению пакетами, в нашем случае dpkg:

#! /usr/bin/env python3 # # Query package state by dpkg status import subprocess package = 'git' def query_package(package): status = subprocess.getstatusoutput("dpkg-query -W -f='${Status}' " + package) if not status[0]: print(status[1]) # package is installed else: print(status[1])
1
ответ дан 2 August 2018 в 03:40

Я бы выбрал другой подход. Чтобы проверить, доступен ли Git в данной системе, проверьте, существует ли двоичный файл git в PATH пользователя или просто попытайтесь выполнить git --version. Эта проверка будет более надежной и поддерживает людей, которые (по какой-либо причине) устанавливают Git из источника в / usr / local / bin или даже ~ / bin.

Это не прямой ответ на ваш вопрос, но я надеюсь, что это все равно поможет. Если вам нужна помощь в кодировании, что в Python, дайте мне знать, и я предоставлю более подробную информацию.

0
ответ дан 4 August 2018 в 19:43
  • 1
    Кажется разумным, но как я могу заставить python регистрировать, действительно ли git существует? – Eden Crow 19 April 2011 в 15:32
  • 2
    Попробуйте запустить его с помощью subprocess.Popen () и обработать исключение, если оно не выполнено. Я обновил свой ответ. – Egil 19 April 2011 в 16:15
  • 3
    @Egil Добро пожаловать :) – Adam Byrtek 19 April 2011 в 23:13

Вы также можете попробовать проверить вывод which.

(Может быть, это не сработает, как никто другой не предложил?)

0
ответ дан 4 August 2018 в 19:43
  • 1
    which является встроенной оболочкой, поэтому вам придется сначала порождать оболочку. – Adam Byrtek 19 April 2011 в 23:16
  • 2
    /usr/bin/which не является встроенной оболочкой, если я не ошибаюсь. – Broam 21 April 2011 в 19:27
  • 3
    Правильно, это встроенный только в Zsh (который я использую). Извини за это. – Adam Byrtek 21 April 2011 в 22:58

Вы можете использовать apt-модуль python, но он проверяет только, установлен ли пакет. Это приведет к сбою не-deb-рассылок или при установке вне диспетчера пакетов:

import apt cache = apt.Cache() cache.open() cache["git-core"].is_installed# Evaluates true if git is installed

Попробуйте запустить git и обработать исключение, если оно не выполнено:

import subprocess try: # pipe output to /dev/null for silence null = open("/dev/null", "w") subprocess.Popen("git", stdout=null, stderr=null) null.close() except OSError: print("git not found")

Третья опция было бы попробовать все пути в $PATH и проверить, есть ли у вас разрешение exec на path / git.

4
ответ дан 4 August 2018 в 19:43

Если вы хотите сделать это, вы можете сделать что-то вроде:

checkvar = 0 for line in open("filename"): if "git" in line: checkvar = checkvar + 1 print "Phrase git found ", checkvar, " times"
0
ответ дан 4 August 2018 в 19:43

Ищите установленные файлы

Предполагая, что мы знаем, где установлена ​​программа запуска или двоичная программа приложения, простой подход - просто проверить, существует ли это:

#! /usr/bin/env python3 # # Query package state by installation path import os.path path = '/usr/bin/git' def query_package(path): if os.path.exists(path): print('Git is ready to use') else: print('please install Git')

Обратитесь к DPKG

Другой способ запросить установленные пакеты, однако, - это обратиться к управлению пакетами, в нашем случае dpkg:

#! /usr/bin/env python3 # # Query package state by dpkg status import subprocess package = 'git' def query_package(package): status = subprocess.getstatusoutput("dpkg-query -W -f='${Status}' " + package) if not status[0]: print(status[1]) # package is installed else: print(status[1])
1
ответ дан 4 August 2018 в 19:43

Я бы принял другой подход. Чтобы проверить, доступен ли Git в данной системе, проверьте, существует ли двоичный файл git в PATH пользователя или просто попытайтесь выполнить git -version . Эта проверка будет более надежной и поддерживает людей, которые (по какой-либо причине) устанавливают Git из источника в / usr / local / bin или даже ~ / bin.

Это не прямой ответ на ваш вопрос, но я надеюсь, что это все равно поможет. Если вам нужна помощь в кодировании, что в Python, дайте мне знать, и я предоставлю более подробную информацию.

0
ответ дан 6 August 2018 в 03:48

Вы также можете попробовать проверить выход , который .

(Может быть, это не сработает, как никто другой не предложил?)

0
ответ дан 6 August 2018 в 03:48

Вы можете использовать apt-модуль python, но он проверяет только, установлен ли пакет. Это приведет к сбою не-deb-рассылок или если он установлен за пределами менеджера пакетов:

  import apt cache = apt.Cache () cache.open () cache ["git-core"]. Is_installed #  Вычисляет true, если git установлен  

Попробуйте запустить git и обработать исключение, если оно не выполнено:

  import subprocess try: # pipe output to / dev /  null для молчания null = open ("/ dev / null", "w") subprocess.Popen ("git", stdout = null, stderr = null) null.close () кроме OSError: print ("git not found")   

Третий вариант - попробовать все пути в $ PATH и проверить, есть ли у вас разрешение exec на пути / git.

4
ответ дан 6 August 2018 в 03:48

Если вы хотите сделать это, вы можете сделать что-то вроде:

 checkvar = 0 для строки в открытом («имя файла»): если «git» в строке: checkvar = checkvar + 1 print  «Фраза git found», checkvar, «times» 
0
ответ дан 6 August 2018 в 03:48

Ищите установленные файлы

Предполагая, что мы знаем, где установлена ​​программа запуска или бинарный файл приложения по умолчанию, простой подход заключается в том, чтобы просто проверить его существование как:

  #!  / usr / bin / env python3 # # Состояние пакета запроса по пути установки import os.path path = '/ usr / bin / git' def query_package (путь): if os.path.exists (путь): print ('Git is  готово к использованию ') else: print (' install install Git ')  

Обратитесь к DPKG

Другой способ запросить установленные пакеты, однако, - это обратиться к управлению пакетами в наш случай dpkg:

  #!  / usr / bin / env python3 # # Состояние пакета запроса с помощью пакета подпроцессов импорта dpkg = 'git' def query_package (package): status = subprocess.getstatusoutput ("dpkg-query -W -f = '$ {Status}'"  + пакет), если не статус [0]: печать (статус [1]) # пакет установлен else: print (статус [1])  
1
ответ дан 6 August 2018 в 03:48

Я бы принял другой подход. Чтобы проверить, доступен ли Git в данной системе, проверьте, существует ли двоичный файл git в PATH пользователя или просто попытайтесь выполнить git -version . Эта проверка будет более надежной и поддерживает людей, которые (по какой-либо причине) устанавливают Git из источника в / usr / local / bin или даже ~ / bin.

Это не прямой ответ на ваш вопрос, но я надеюсь, что это все равно поможет. Если вам нужна помощь в кодировании, что в Python, дайте мне знать, и я предоставлю более подробную информацию.

0
ответ дан 7 August 2018 в 21:43

Вы также можете попробовать проверить выход , который .

(Может быть, это не сработает, как никто другой не предложил?)

0
ответ дан 7 August 2018 в 21:43

Вы можете использовать apt-модуль python, но он проверяет только, установлен ли пакет. Это приведет к сбою не-deb-рассылок или если он установлен за пределами менеджера пакетов:

  import apt cache = apt.Cache () cache.open () cache ["git-core"]. Is_installed #  Вычисляет true, если git установлен  

Попробуйте запустить git и обработать исключение, если оно не выполнено:

  import subprocess try: # pipe output to / dev /  null для молчания null = open ("/ dev / null", "w") subprocess.Popen ("git", stdout = null, stderr = null) null.close () кроме OSError: print ("git not found")   

Третий вариант - попробовать все пути в $ PATH и проверить, есть ли у вас разрешение exec на пути / git.

4
ответ дан 7 August 2018 в 21:43

Если вы хотите сделать это, вы можете сделать что-то вроде:

 checkvar = 0 для строки в открытом («имя файла»): если «git» в строке: checkvar = checkvar + 1 print  «Фраза git found», checkvar, «times» 
0
ответ дан 7 August 2018 в 21:43

Ищите установленные файлы

Предполагая, что мы знаем, где установлена ​​программа запуска или бинарный файл приложения по умолчанию, простой подход заключается в том, чтобы просто проверить его существование как:

  #!  / usr / bin / env python3 # # Состояние пакета запроса по пути установки import os.path path = '/ usr / bin / git' def query_package (путь): if os.path.exists (путь): print ('Git is  готово к использованию ') else: print (' install install Git ')  

Обратитесь к DPKG

Другой способ запросить установленные пакеты, однако, - это обратиться к управлению пакетами в наш случай dpkg:

  #!  / usr / bin / env python3 # # Состояние пакета запроса с помощью пакета подпроцессов импорта dpkg = 'git' def query_package (package): status = subprocess.getstatusoutput ("dpkg-query -W -f = '$ {Status}'"  + пакет), если не статус [0]: печать (статус [1]) # пакет установлен else: print (статус [1])  
1
ответ дан 7 August 2018 в 21:43

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

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