檔案和目錄的維護

2021-08-21 21:59:37 字數 1677 閱讀 2470

標準庫和系統呼叫為檔案和目錄的建立與維護提供了全面的支援。

chmod系統呼叫用來改變檔案或目錄的訪問許可權

函式原型

# include int chmod(const char *path,mode_t mode);
path:檔案路徑

mode:修改後的許可權

除非程式被賦予適當的特權,否則只有檔案的屬主或超級管理員使用者才可以修改它的許可權。

chown系統呼叫用來改變乙個檔案的屬主。

函式原型:

# include # include int chown(const char *path, uid_t owner, gid_t group);
這個呼叫使用的是使用者id和組id的數字值(通過getuid和getgid獲得)和乙個用於限定誰可以修改檔案屬主的系統值。如果已經設定了適當的許可權,檔案的屬主和所屬組就會改變

unlink系統呼叫用來刪除乙個檔案

unlink系統呼叫刪除乙個檔案的目錄項並減少它的鏈結數。它在成功是返回0,失敗是返回-1。如果想通過呼叫這個函式來成功刪除檔案,就必須擁有該檔案所屬目錄的寫和執行許可權。

函式原型:

# include int unlink(const char *path);

int link(const char *path1, const char *path2);

int symlink(const char *path1, const char *path2);

如果乙個檔案的連線數減少到0,並且沒有程序開啟它,這個檔案就會被刪除。事實上,目錄項總是立刻被刪除,但檔案所占用的空間要等到最後乙個程序關閉它之後才會被系統**。rm程式使用的就是這個呼叫。檔案上其他的鏈結表示這個檔案還有其他的名字,這通常是由ln程式建立的。可以使用link呼叫在程式中建立乙個新鏈結。

link系統呼叫將建立乙個指向已有檔案path1的的新連線。新目錄項由path2給出。你可以通過symlink系統呼叫以類似的方法建立乙個符號鏈結。注意:乙個檔案的符號鏈結並不會增加該檔案的鏈結數,所以它不會像普通鏈結那樣防止檔案被刪除。

mkdir和rmdir系統呼叫用來建立和刪除目錄

mkdir系統呼叫用於建立目錄,函式原型如下:

# include # include //path:新建目錄路徑

//mode:許可權值

int mkdir(const char *path,mode_t mode);

rmdir系統呼叫用於刪除檔案目錄,但只有檔案為空時才行,函式原型如下:

# include //引數為目錄路徑

int rmdir(const char *path);

程式可以像使用者在檔案系統裡那樣來瀏覽目錄,使用chdir系統呼叫,函式原型如下:

# include int chdir(const char *path);
程式可以通過呼叫getcwd函式來確定當前工作目錄。函式原型如下;

# include char *getcwd(char *buf, size_t size);
getcwd函式把當前目錄的名字寫到給定的緩衝區buf裡。如果目錄名的長度超出引數size給出的緩衝區長度,返回null,成功發那會指標buf。

Linux系統呼叫之檔案和目錄的維護

一 系統呼叫列表 int chmod const char path,mode t mode int chown const char path,uid t owner,gid t group int unlink const char path int link const char oldpat...

Linux 目錄檔案的瀏覽 管理及維護

快捷鍵ctrl shift n在終端中開啟另乙個命令視窗。如何要檢視命令的相關解釋,可以使用 命令 help的方式檢視,例如檢視cp命令如何使用,可以這麼寫 cp help 清屏操作,可以使用 clear命令。clear 追加內容到檔案中 echo 你好 dir1 dir2 dir3 123.txt...

活動目錄維護

1.壓縮和重新索引活動目錄 2.修復活動目錄資料庫 大多是ntdsutil工具。ntdsutil在執行它的部分工作時會使用由另乙個名為esentutl的實用程式提供的指令。1.只有在希望 ntds.dit占用的磁碟空間時,才需要執行離線碎片整理。如果是聯絡碎片整理,雖然會對資料庫 進行壓縮,但是不會...