无法在shell脚本

时间:2017-12-06 20:09:59

标签: python bash shell

首先,我是Debian,Python和shell脚本的完整菜鸟,所以请跟我说话,就好像我是一个小孩。

我有一个python脚本我正在运行virtualenv,我想通过shell脚本执行它。以下是我在终端输入的内容:

source .profile workon cv cd Desktop/Camera python main.py

我尝试将其转换为shell脚本,但收到错误 - source: not found

我发现我的问题没有答案,至少在我能理解的任何条件下都没有。任何意见,将不胜感激。此外,在您回答之前,我也不知道为什么我需要执行source .profile,我只是按照项目的初学者指南进行操作,可在此处找到:https://www.hackster.io/hackerhouse/smart-security-camera-90d7bd

提前致谢,如果这是一个愚蠢的问题,对不起。

2 个答案:

答案 0 :(得分:0)

在脚本顶部添加一个hashbang(应该是第一行):

#!/bin/bash

这将确保您在bash中运行shell脚本。拥有一个shell并不意味着它的重击。并非所有shell都具有您正在使用的source函数(bash具有它)。

有些人更喜欢以下内容:

#!/usr/bin/env bash

因为你是一个初学者"我认为这并不重要。第一个确保它在/ bin中使用bash,第二个是使用PATH变量来查找bash,因此如果他/她想要,脚本的用户可以提供它自己的bash。

答案 1 :(得分:0)

壳牌的最佳做法是像@Veda建议的那样乞讨。

使用像bash shell.sh这样的bash执行shell脚本,因为链接建议使用相对位置而不是绝对位置