ubuntu是否特意处理下载的文件?
有一个脚本只是在我的/ etc / hosts文件中添加额外的行来启用本地开发。 因为它非常有用,所以我决定把它放在一个要点上。
当我的一个朋友下载了shell脚本,更改了必要的权限并尝试运行它时,它失败了。
显示的错误是:
$ ./dev-mode
: 没有相应的文件和目录
即使脚本在我的计算机上运行完美文件。 / etc / hosts文件存在于我们的计算机中,权限和所有者是相同的。 每件事都绝对相似。
然后他制作了一个新文件,将脚本的内容复制到新文件中,并更改了必要的权限,然后就RAN了!
在我看来,两个文件之间没有任何可以想象的区别,但差异确实它们是不同的,但不突出显示任何行或任何字符……没有。 权限相同,等等。
ubuntu是否以不同的方式处理下载的文件,并阻止其运行?
绝对相同的文件,一个运行,另一个不运行
基本上,是的。 从Internet下载文件时,您将获取文件中的数据。
您没有得到的是应用于该文件的权限。 这是在您的本地文件系统上完成的。
要使文件在本地系统上可执行,请放入终端并运行
chmod +x filename.sh
这告诉您的文件系统将该特定文件视为可执行文件。
这是有充分理由的。 假设您要下载一个文件,该文件具有允许您计算机上的任何人运行它的权限。 这是一个明显的安全风险。