如何解决 bin/sh: 1: source not: found

3,342 阅读2分钟

Ubuntu是一个流行的Linux操作系统,允许你使用脚本来运行代码。计算机错误是指计算机产生不准确的结果的情况。当使用终端运行一些脚本或做一些任务时,你会遇到一些错误,可以通过不同的技术来解决。在这篇文章中,我们将讨论"bin/sh: 1: source not: found "错误的原因以及如何解决。

shell脚本是执行命令的软件。Shell脚本主要用于避免繁琐的工作。与其一个接一个地输入命令N次,你可以构建一个脚本来自动执行一系列指令,然后一个接一个地运行。/bin/sh是用来用sh、Bourne shell或其他类似的shell来运行文件的。

为什么会出现 "bin/sh: 1: source not: found "错误?

在使用fypll资源库时,当你使用下面的命令开始激活它时,你会遇到 "bin/sh: 1: source not: found "的错误。

$ source ./activate

你会得到。

/ bin / sh: 1: source: not found

解决方法

我们可以通过多种方式解决上述错误,并按照适合你的方式来解决。

该源码不是sh内置的,它是bash内置的,而你使用的是sh而不是bash。尝试使用bash而不是sh。

将 "source ./activate "改为". ./activate"

建立一个自动设置脚本,如果某些路径没有导出,就修改/etc/profile和$HOME/.profile,然后通过下面提到的命令自动重新加载这些路径。

$ source /etc/profile
$ source ~/.profile

你会得到。

source: not found

这并不意味着没有找到源文件,而是意味着你试图访问的源文件没有找到,源文件是Bash的内置函数,而且脚本没有用bash运行。

解决问题

而不是source,". "被一些shells所支持。所以,你可以尝试像下面提到的语法。

$ . filename

而不是使用下面的命令。

$ source filename

/bin/sh通常是一个试图模仿The Shell的外壳。对于 "sh",许多发行版利用/bin/bash,因为它支持源代码。然而,Ubuntu不支持该源码,它使用/bin/dash。如果你不能编辑脚本,可以尝试改变执行它的shell。

结论

作为一个程序员或计算机用户,我们每天都会遇到一些错误。在使用shell时,我们会遇到不同类型的错误,其中一个错误是 "bin/sh: 1: source not: found"。你在使用 "sh "shell运行bash脚本时遇到了这个错误。这篇文章讨论了这个错误最常见的原因,也讨论了解决这个错误的可能方法。你可以从这篇文章中找到帮助,同时解决你的错误。