背景:为了偷懒,自己写了一个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脚本工具所需要的参数即可。