我正在尝试运行一个脚本,而脚本又应该执行一个基本的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
?
谢谢。
答案 0 :(得分:0)
你错过了' /'在shebang线:
#!usr/bin/python
应该是
#!/usr/bin/python
我注意到的另一件事是,你在os.system中调用cd。由于该命令将在子shell中执行,因此它不会更改调用脚本进程的当前目录。