- Learning Penetration Testing with Python
- Christopher Duffy
- 306字
- 2021-07-09 21:52:54
Environmental variables and PATH
These variables are important for executing scripts written in Python, not for writing them. If they are not configured, the location of the Python binary has to be referenced by its fully qualified path location. As an example, here is the execution of a Python script without the environmental variable being declared in Windows:
C:\Python27\python wargames_print.py
The following is the equivalent in Linux or Unix if the reference to the proper interpreter is not listed at the top of the script and the file is in your current directory:
/usr/bin/python ./wargames_print.py
In Windows, if the environmental variable is set, you can simply execute the script by typing python
and the script name. In Linux and Unix, we add a line at the top of the script to make it more portable. A benefit to us (penetration testers) is that this makes the script useful on many different types of systems, including Windows. This line is ignored by the Windows operating system natively, as it is treated as a comment. The following referenced line should be included at the top of all Python scripts:
#!/usr/bin/env python
This line lets the operating system determine the correct interpreter to run based on what is set in the PATH
environmental variable. In many script examples on the Internet, you may see a direct reference to an interpreter, such as /usr/bin/python
. This not considered good practice as it makes the code less portable and more prone to errors with potential system changes.
Tip
Setting up and dealing with PATH
and environmental variables will be different for each operating system. Refer to https://docs.python.org/2/using/windows.html#excursus-setting-environment-variables for Windows. For Unix and Linux platforms, the details can be found at https://docs.python.org/2/using/unix.html#python-related-paths-and-files. Additionally, if you need to create specialty environmental variables for a specific tool someday, you can find the details at https://docs.python.org/2/using/cmdline.html.
- Learning Scala Programming
- The DevOps 2.3 Toolkit
- 精通搜索分析
- Learning SQLite for iOS
- PySide GUI Application Development(Second Edition)
- C語言程序設計同步訓練與上機指導(第三版)
- 深入理解Elasticsearch(原書第3版)
- Jenkins Continuous Integration Cookbook(Second Edition)
- JavaScript腳本特效編程給力起飛
- Visual FoxPro 6.0程序設計
- Android Sensor Programming By Example
- Node.js從入門到精通
- Application Development with Swift
- Three.js權威指南:在網頁上創建3D圖形和動畫的方法與實踐(原書第4版)
- Mapping with ArcGIS Pro