shutil.which() în Python

Găsește calea completă a unui program din PATH, ca comanda which din terminal.

Sintaxă
shutil.which(comanda, mode=os.F_OK | os.X_OK, path=None)

Ce face shutil.which()

which("git") caută programul în directoarele din variabila PATH și returnează calea executabilului, sau None dacă nu există. Este util înainte de a porni un program cu subprocess.

Parametri

Parametru Descriere
comanda Numele programului.
path Opțional. Lista de directoare în locul lui PATH.

Ce returnează

Calea, ca text, sau None.

Exemple

Exemplul 1: Verificarea programelor instalate

import shutil
for program in ["python3", "git", "program_inexistent"]:
    print(program, "->", shutil.which(program))

Rezultat posibil (diferă la fiecare rulare)

python3 -> /usr/bin/python3
git -> /usr/bin/git
program_inexistent -> None

Greșeli frecvente

  • Presupui că un program există și pornești subprocess.run direct; primești FileNotFoundError. Verifică întâi cu which.

Comenzi înrudite