2014-09-10 48 views
0

我注意到我使用PuTTY進入的Linux服務器中的.cpp文件之一以綠色突出顯示,因爲它應該是。我有另一個只是灰色的.cpp文件,就像普通文本一樣。我記得這一切發生了一段時間,但我從來沒有看過它。現在我在想,這個灰色的.cpp是我在Notepad ++中創建的,然後保存到那個目錄中的。綠色的是我的教授的一個,我用tar文件下載並解壓縮到目錄中。我這樣說的原因是因爲我認爲這是我最後一次注意到這一點的模式。在PuTTY中出現奇怪的顏色編碼

爲什麼會出現這種情況? 謝謝!

+0

可能是一個封閉的'/ *'註釋或'#if'。嘗試使用其他代碼重新創建顏色編碼。請注意,語法着色取決於編輯器及其配置;正如弗朗西斯·格羅巴羅曾經說過的那樣,關於它的好處在於,您可以將其配置爲以白色顯示評論。 – 2014-09-10 22:46:43

回答

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 

這意味着改變FILE模式(chmod)所有(a)的用戶 - 所有者,所有者組和其他人 - 和刪除(-)執行(x)的權限。您還可以通過其他表單(例如使用八進制值)或使用文件瀏覽器來刪除該權限。

+0

非常感謝您在該位添加了關於文件被標記爲來自不同系統的可執行文件的信息。這很方便知道。 – UnworthyToast 2014-09-11 15:54:40