當前位置:首頁 » 操作系統 » unlinklinux

unlinklinux

發布時間: 2024-11-08 02:31:30

1. linux shell中,unlink和rm命令有什麼區別

strace 跑 rm 與 unlink,結果有不同地方.

1. strace rm 1.txt 片段

access("1.txt", W_OK) = 0

unlinkat(AT_FDCWD, "1.txt", 0) = 0

復制代碼

2. strace unlink 2.txt 片段

unlink("2.txt") = 0

復制代碼

我想可以再看看 unlink 與 unlinkat 的 manpage 說明應該有答案 ?

The unlinkat() system call operates in exactly the same way as either unlink(2) or rmdir(2) (depending on

whether or not flags includes the AT_REMOVEDIR flag) except for the differences described in this manual

page.

AT_REMOVEDIR

By default, unlinkat() performs the equivalent of unlink(2) on pathname. If the AT_REMOVEDIR flag

is specified, then performs the equivalent of rmdir(2) on pathname.

復制代碼

測試用 strace rm -r testdir 方式刪除一個目錄與其下的檔案目錄,結果為:

access("testdir", W_OK) = 0

unlinkat(AT_FDCWD, "testdir", AT_REMOVEDIR) = 0

復制代碼

所以結論一般命令用 rm 或是 unlink 都可以刪除檔案,因為都是一樣的意思。系統面呼叫來說刪除檔案一般還是使用 unlink() 呼叫,只是有另外提供 unlinkat 提供相同機制,但是可以刪除檔案或是空目錄。

熱點內容
速喵游戲下載為什麼要鎖屏密碼 發布:2024-12-24 11:07:38 瀏覽:337
國家基礎資料庫 發布:2024-12-24 10:58:20 瀏覽:924
python是否是字元串 發布:2024-12-24 10:56:51 瀏覽:525
疫區的消毒應怎麼配置 發布:2024-12-24 10:55:31 瀏覽:242
可樂雲解壓密碼 發布:2024-12-24 10:50:18 瀏覽:760
數據存儲與容災 發布:2024-12-24 10:49:47 瀏覽:598
蘋果安卓哪個好玩 發布:2024-12-24 10:44:00 瀏覽:318
怎麼在電腦上建網站上傳ftp 發布:2024-12-24 10:34:36 瀏覽:778
linux下安裝驅動 發布:2024-12-24 10:33:03 瀏覽:653
什麼人用獨立伺服器 發布:2024-12-24 10:22:09 瀏覽:684