有一个脚本,它只是在我的/etc/host文件中添加额外的行,以支持本地开发。因为它很有用,所以我决定把它记在要点上。
当我的一个朋友下载了shell脚本,更改了必要的权限并试图运行它时,它失败了。
显示的错误是:
$ ./dev-mode :没有这样的文件或目录
即使脚本在我的电脑上运行得很好。/etc/host文件存在于我们的两台计算机中,权限和所有者是相同的。每件事都是完全相似的。
然后,他创建了一个新文件,将脚本的内容复制到新文件中,并更改了必要的权限,然后运行!
在我看来,这两个文件之间没有任何可能的区别,但是差别就是它们是不同的,但是没有突出任何一行或任何字符.没什么。权限是相同的,等等。
ubuntu以某种方式对待下载的文件,并阻止其运行吗?
完全相同的文件,一个运行,另一个不运行
发布于 2014-09-03 08:10:14
基本上,是的。当您从Internet下载一个文件时,您正在获取文件中的数据。
您没有得到的是应用于文件的权限。这是在本地文件系统上完成的。
若要使文件在本地系统上可执行,请放入终端并运行。
chmod +x filename.sh它告诉您的文件系统将该特定文件视为可执行文件。
这有一个很好的理由。假设您要下载一个具有权限的文件,允许计算机上的任何人运行该文件。这是一个明显的安全风险。
https://askubuntu.com/questions/519499
复制相似问题