Shell脚本不执行python文件

时间:2016-10-01 13:05:15

标签: python shell

我正在尝试运行一个脚本,而脚本又应该执行一个基本的python脚本。 这是shell脚本:

#!usr/bin/bash
mv ~/Desktop/source/movable.py ~/Desktop/dest
cd ~/Desktop/dest
pwd
ls -lah
chmod +x movable.py
python movable.py
echo "Just ran a python file from a shell script"

这是python脚本:

#!usr/bin/python
import os
print("movable transfered to dest")
os.system("pwd")
os.system("mv ~/Desktop/dest/movable.py ~/Desktop/source")
print("movable transfered to dest")
os.system("cd ~/Desktop/source")
os.system("pwd")

Q1。 shell脚本没有执行python文件。我究竟做错了什么? Q2。我是否需要在python脚本中编写第一行#!usr/bin/python? 谢谢。

1 个答案:

答案 0 :(得分:0)

你错过了' /'在shebang线:

#!usr/bin/python

应该是

#!/usr/bin/python

我注意到的另一件事是,你在os.system中调用cd。由于该命令将在子shell中执行,因此它不会更改调用脚本进程的当前目录。