問題:如何在執行的C 程式中擷取使用者的主目錄在Linux 上?該程式碼也適用於 Unix 嗎?另外,如果我的程式是由root使用者執行的,是否允許在/root目錄下建立檔案和資料夾?
答案:
判斷使用者的主目錄,請依照下列步驟操作:
<code class="cpp">#include <unistd.h> #include <sys/types.h> #include <pwd.h> struct passwd *pw = getpwuid(getuid()); const char *homedir = pw->pw_dir;</code>
注意:對於多執行緒應用程序,建議使用 getpwuid_r。
關於 /root 目錄:
是的,如果您的程式正在運行,通常可以在 /root 目錄中建立檔案和資料夾作為根使用者。但是,必須謹慎行事並考慮這樣做的潛在安全影響。以上是如何使用 C 語言取得 Linux 中使用者的主目錄以及 Root 使用者存取的潛在安全注意事項?的詳細內容。更多資訊請關注PHP中文網其他相關文章!