我注意到我在Linux服务器中使用PuTTY进入的.cpp文件中的一个突出显示为绿色,因为它似乎应该是。我有另一个灰色的.cpp文件,就像普通文本一样。我记得这件事发生了一段时间,但我从未调查过。现在,我认为灰色.cpp是我在Notepad ++中自己创建然后保存到该目录的事实的关系。绿色的是我教授的一个,我在tar文件中下载并解压缩到目录中。我之所以说这是因为我认为这是我最后一次注意到这种情况的模式。
为什么会发生这种情况? 谢谢!
答案 0 :(得分:0)
我相信你在谈论Linux上ls
命令的彩色输出,这是一个不是特定于C ++或PuTTY的问题。
默认情况下,灰色用于普通文件,绿色用于可执行文件。如果您键入ls -l
,它将逐行打印一个文件以及有关它们的一些信息。文件权限编码为一系列字母和短划线,例如:
-rwxr-xr-x
-rw-r--r--
字母x
表示文件被标记为可执行文件。从不同的系统(例如从Windows(NTFS)到Linux(通常是ext3或ext4))传输时,文件通常被标记为可执行文件。
C ++源文件(.cpp
)是一个文本文件,无法执行(必须编译和链接才能变成程序),因此拥有该文件通常没有意义标记为可执行文件,即它应该是灰色的,而不是绿色的。您可以使用以下命令删除执行权限:
chmod a-x FILE
表示为所有(chmod
)用户(所有者,所有者的群组和其他人)更改FILE
的模式(a
)并删除(-
执行(x
)权限。您还可以通过其他表单(例如使用八进制值)或使用文件浏览器删除该权限。