繁体   English   中英

在ubuntu中:即使文件存在,我也无法更改文件并获取“无法找到文件”?

[英]In ubuntu: I can not change files and get “file can not be found” even though the file exists?

当我更改bash脚本(Ubuntu 10.04)时,脚本会被更改,但是当我运行它时,它会运行旧版本并且会忽略所做的更改。 还有一些文件,它只是说该文件不存在(即使它确实......)

我认为它与权限有关,即使我已确保文件标记为所有用户和可执行文件的读写。 但这可能是我需要在“更高层次”上改变的许可? 殊死

我更改了文件夹的权限,然后重新启动了计算机。 然后它工作(但必须重新启动,我认为有点奇怪)。 无论如何现在它的工作:)

如果您想知道在Linux / Unix上运行哪个版本的文件,通常可以输入:

which prog

其中“prog”是程序的名称。 例如,如果您想知道“emacs”的位置,或者您实际使用的是emacs的哪个副本,可以键入:

which emacs

在我的机器上,它返回:

/usr/bin/emacs

在您的情况下,如果“which”返回的路径与您正在编辑的文件的名称不匹配,那么这将解释您的困惑,并指出您正确的方向来解决问题。 我还会通过输入以下内容来检查PATH环境变量的内容:

echo $PATH

如果在包含正在编辑的文件的目录之前的路径中看到另一个目录,则说明了该问题。 另外,请注意“。” 出于安全原因,(当前目录)永远不会在路径上,或者至少不应该在路径上。 如果要在当前目录中运行程序,请显式使用“./prog”形式以确保它在当前目录中运行程序“prog”。

从你告诉我的,这与权限无关。

在编辑器和终端中进行双重,三重,四重检查,即可编辑和执行相同的文件。 这给我带来了不少WTF时刻。

您在终端中输入的确切命令会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM