您好,登錄后才能下訂單哦!
這篇文章主要介紹“Linux open命令怎么用”,在日常操作中,相信很多人在Linux open命令怎么用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Linux open命令怎么用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
open命令用于打開文件,使用時需要引用頭文件
__extern_always_inline int open (__const char *__path, int __oflag, ...) { if (__va_arg_pack_len () > 1) __open_too_many_args (); if (__builtin_constant_p (__oflag)) { if ((__oflag & O_CREAT) != 0 && __va_arg_pack_len () 入參中,path是要打開或創建的文件路徑,oflag是標記,用來標識要打開或創建的文件所擁有的權限,由主flag和備flag組成,主flag有O_RDONLY, O_WRONLY, O_RDWR,分別表示只讀,只寫,讀寫,三者必有其一,備flag可以自由選擇,常用的一個備flag是O_CREAT,用于在沒有該文件的時候,在__path路徑下創建該文件。可以附加第三個參數,類型為mode_t,是8進制數,用3位分別表示所有者權限、群組權限、其他用戶權限,每位由4 | 2 | 1組成,4是讀,2是寫,1是執行,例如0600表示所有者擁有讀寫權限(6 = 4 | 2)。一個示例代碼: #ifdef _cplusplus extern "C" { #endif #include #include #include //for open #include //for printf void main(argc, argv) int argc; char ** argv; { char * filename = "lala"; //要創建的文件 char * str = "hello, world\n"; //要向文件中寫入的內容 int fd1 = open(filename, O_RDWR | O_CREAT, 0644); printf("tmp = %d\n", fd1); write(fd1, str, strlen(str) + 1); system("cat lala"); int fd2 = open(filename, O_CREAT | O_WRONLY | O_EXCL, 0600); if (-1 == fd2) { fd2 = open(filename, O_WRONLY | O_EXCL | O_TRUNC, 0600); printf("fd = %d\n", fd2); //fd2的值會比fd1大1 } close(fd1); close(fd2); system("cat lala"); } #ifdef _cplusplus } #endif
到此,關于“Linux open命令怎么用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。