OS X 系统下实现python脚本工具在任意目录下直接使用

背景:为了偷懒,自己写了一个python脚本工具。但是每次用到这个脚本的时候都需要把脚本文件拷贝到当前目录下,再通过在终端输入“python xxxx.py 参数”来运行,这样并没达到彻底的’偷懒‘。如何实现在需要的时候随意在哪个目录下,直接在终端输入某个指令或文件名即可运行该脚本,而不用指定该脚本的路径或是把脚本copy到当前目录呢?

解决方法:使用shell脚本来间接运行自己的python脚本工具

编写shell脚本

#!/bin/bash
python xxxx/xxx.py $*

说明:
1. xxxx/xxx.py 为自己的python脚本工具文件所在的绝对路径;
2. $* 为终端运行该shell脚本时传入的全部参数,作为整体传给python脚本工具。
3. 改shell脚本文件创建好之后保存在某个路径下,比如命名为myscript.sh,使用chmod命令修改文件的权限,chmod +x myscript.sh

将shell脚本所在路径添加到环境变量中

1.添加到 ~/.bash_profile 文件中,没有该文件可自行创建;

export PATH="/xxxx:$PATH"

注:其中xxxx为myscript.sh所在目录的绝对路径,冒号(:)为环境变量分隔符。
2. 让所做的配置生效

source ~/.bash_profile  

3. 查看环境变量是否生效

echo $PATH  

通过以上的步骤即可完成使用shell脚本对一个python脚本工具的间接启动封装,这样就可以在任意一个路径下直接在终端输入shell脚本名后加python脚本工具所需要的参数即可。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以通过Flask提供的路由和视图函数,实现一个按钮点击后运行Python脚本的功能。以下是一个简单的示例: 1.创建一个Flask应用实例: ```python from flask import Flask app = Flask(__name__) ``` 2.创建一个HTML模板,包含一个按钮和一个表单,用于上传Python脚本: ```html <!doctype html> <html> <head> <title>Run script with Flask</title> </head> <body> <h1>Run script with Flask</h1> <form action="{{ url_for('run_script') }}" method="post" enctype="multipart/form-data"> <input type="file" name="script_file"> <br><br> <input type="submit" value="Run Script"> </form> </body> </html> ``` 3.创建一个视图函数,用于处理按钮点击事件: ```python import os from flask import render_template, request @app.route('/', methods=['GET', 'POST']) def run_script(): if request.method == 'POST': # 获取上传的文件 script_file = request.files['script_file'] # 保存文件到本地 script_file.save(script_file.filename) # 运行Python脚本 os.system(f'python {script_file.filename}') return 'Script executed successfully!' else: return render_template('index.html') ``` 4.启动Flask应用: ```python if __name__ == '__main__': app.run(debug=True) ``` 5.访问网址http://localhost:5000/,上传一个Python脚本文件,点击“Run Script”按钮,即可运行该脚本。运行完成后,页面会显示“Script executed successfully!”的提示信息。 需要注意的是,这种方式存在安全风险,因为用户可以上传任意Python脚本文件并运行。可以通过一些校验方式,如文件扩展名、文件大小、文件内容等,来增强安全性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值