我是 Linux 新手,所以……抱歉。我已经研究了几个小时,但无法解决我的问题。
我正在学习一门课程,其中个人在 usr/bin 目录中创建一个文件vim usr/bin testfile
- 无论我尝试什么,我都无法在这里写入,并且我得到“E212:无法打开文件进行写入“错误。无论我是普通用户还是 root,它都不会让我这么做。我已经尝试过对该目录使用 chmod 777。如果我导航到 usr/bin,我可以在其中创建一个文件,但是除此之外,如果我在其他地方,无论是否root,我都不会允许我尝试CentOS 9流和从RH网站下载的redhat。
答案1
usr/bin
是一个相对路径。这意味着bin
在子目录中usr
调用的文件当前工作目录。大多数目录没有名为 的子目录usr
。所以对于大多数工作目录的选择来说,usr/bin
不存在。
Unix系统有一个目录/usr/bin
。这是绝对路径,因为它以斜杠开头。它是在根目录内调用bin
的子目录内调用的子目录。usr
该命令vim /usr/bin testfile
将首先尝试编辑/usr/bin
(Vim 将看到这是一个现有目录并将显示其内容),然后testfile
在当前目录中进行编辑。
所指的命令大概是vim /usr/bin/testfile
。此命令编辑testfile
目录内调用的文件/usr/bin
(该文件存在于所有典型的类 Unix 系统上)。无论该命令testfile
存在与否,该命令都有效。如果没有,您将有机会(尝试)通过从 Vim 保存来创建该文件。只有在您拥有权限的情况下才能进行保存,这需要是 root 用户。
对于课程来说,在系统目录中编辑测试文件是不好的做法。您应该学习如何编辑帐户上的文件,并且在熟悉基础知识之前不要开始编辑系统文件。名为 的文件testfile
与/usr/bin
.