Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从Bash脚本调用bin文件夹中的Python/Perl脚本?_Python_Perl_Bash - Fatal编程技术网

如何从Bash脚本调用bin文件夹中的Python/Perl脚本?

如何从Bash脚本调用bin文件夹中的Python/Perl脚本?,python,perl,bash,Python,Perl,Bash,我以前使用复制Python/Perl脚本从我的bash脚本进行访问。重复不是一个好主意,我知道!有没有办法从我们设置的bin或libs文件夹中调用它们 例如: 我的python脚本位于/home/ThinkCode/libs/python/script.py 我的bash脚本位于/home/ThinkCode/NewProcess/ProjectA/run.sh 现在我想使用/callscript.pyfromrun.sh 谢谢大家! 只需执行python/path/to/my/python

我以前使用复制Python/Perl脚本从我的bash脚本进行访问。重复不是一个好主意,我知道!有没有办法从我们设置的bin或libs文件夹中调用它们

例如:

  • 我的python脚本位于
    /home/ThinkCode/libs/python/script.py

  • 我的bash脚本位于
    /home/ThinkCode/NewProcess/ProjectA/run.sh

  • 现在我想使用/call
    script.py
    from
    run.sh


谢谢大家!

只需执行
python/path/to/my/python/script.py

在bash脚本中,执行程序的方式与从bash命令提示符执行程序的方式相同

/home/ThinkCode/libs/python/script.py

如果这不能直接启动脚本,您可能需要在开头添加
python
(例如:
python/home/ThinkCode/libs/python/script.py
)和/或确保脚本是可执行的(使用
chmod+x/home/ThinkCode/libs/python/script.py
)(bash将知道这是一个python脚本,应该使用python运行):

编辑:我的错,应该是
!/usr/bin/env python
而不是
!/usr/bin/python
。这样做

然后
chmod
使用
u+x
(如果不是
a+x

现在你的python脚本可以作为一个可执行文件使用。那么,你的bash脚本可以像调用任何可执行文件一样调用它

#/usr/bin/env python