Scroll to navigation

VIRTUALENV(1) General Commands Manual VIRTUALENV(1)


virtualenv - Python virtual environment creator


virtualenv [--version] [--with-traceback] [-v | -q] [--app-data APP_DATA] [--clear-app-data] [--discovery {builtin}] [-p py] [--creator {builtin,cpython3-posix,venv}] [--seeder {app-data,pip}] [--no-seed] [--activators comma_sep_list] [--clear] [--system-site-packages] [--symlinks | --copies] [--no-download | --download] [--extra-search-dir d [d ...]] [--pip version] [--setuptools version] [--wheel version] [--no-pip] [--no-setuptools] [--no-wheel] [--symlink-app-data] [--prompt prompt] [-h] dest


The virtualenv utility creates virtual Python instances, each invokable with its own Python executable. Each instance can have different sets of modules, installable via easy_install. Virtual Python instances can also be created without root access.

optional arguments:

display the version of the virtualenv package and it's location, then exit
on failure also display the stacktrace internals of virtualenv (default: False)
--app-data APP_DATA
a data folder used as cache by the virtualenv (default: <temp folder>)
start with empty app data folder (default: False)
-h, --help
show this help message and exit


verbosity = verbose - quiet, default INFO, mapping => CRITICAL=0, ERROR=1, WARNING=2, INFO=3, DEBUG=4, NOTSET=5
-v, --verbose
increase verbosity (default: 2)
-q, --quiet
decrease verbosity (default: 0)


discover and provide a target interpreter
--discovery {builtin}
interpreter discovery method (default: builtin)
-p py, --python py
target interpreter for which to create a virtual (either absolute path or identifier string) (default: /usr/bin/python3)


options for creator builtin
--creator {builtin,cpython3-posix,venv}
create environment via (builtin = cpython3-posix) (default: builtin)
directory to create virtualenv at
remove the destination directory if exist before starting (will overwrite files otherwise) (default: False)
give the virtual environment access to the system site-packages dir (default: False)
try to use symlinks rather than copies, when symlinks are not the default for the platform (default: True)
--copies, --always-copy
try to use copies rather than symlinks, even when symlinks are the default for the platform (default: False)


options for seeder app-data
--seeder {app-data,pip}
seed packages install method (default: app-data)
--no-seed, --without-pip
do not install seed packages (default: False)
pass to enable download of the latest pip, setuptools, and wheel from PyPI (default: False)
--no-download, --never-download
pass to disable download of the latest pip, setuptools, and wheel from PyPI (default: True)
--extra-search-dir d [d ...]
a path containing wheels the seeder may also use beside bundled (can be set 1+ times) (default: [])
--pip version
pip version to install, bundle for bundled (default: latest)
--setuptools version
setuptools version to install, bundle for bundled (default: latest)
--wheel version
wheel version to install, bundle for bundled (default: latest)
do not install pip (default: False)
do not install setuptools (default: False)
do not install wheel (default: False)
symlink the python packages from the app-data folder (requires seed pip>=19.3) (default: False)


options for activation scripts
--activators comma_sep_list
activators to generate - default is all supported (default: bash,cshell,fish,powershell,python,xonsh)
--prompt prompt
provides an alternative prompt prefix for this environment (default: None)

config file $HOME/.config/virtualenv/virtualenv.ini (change via env var VIRTUALENV_CONFIG_FILE)


This man-page was created using help2man and then updated by Scott Kitterman <> and is licensed under the same terms as virtualenv.