当前位置:首页 » 操作系统 » 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-25 02:12:52 浏览:38
苹果和安卓打cf手游哪个好 发布:2024-12-25 02:12:52 浏览:662
喵咪斗恶龙安卓哪里下载 发布:2024-12-25 02:07:58 浏览:515
pythonfuture 发布:2024-12-25 01:46:47 浏览:587
如何提升交换机配置能力 发布:2024-12-25 01:41:53 浏览:670
安卓系统怎么删除主屏 发布:2024-12-25 01:41:45 浏览:494
微信小程序客户端是如何访问服务器的 发布:2024-12-25 01:39:26 浏览:509
python逗号split 发布:2024-12-25 01:24:06 浏览:156
sqlwithas效率 发布:2024-12-25 01:21:25 浏览:485
pcielinux 发布:2024-12-25 01:12:02 浏览:645