gpt4 book ai didi

linux - 如何删除未打开的文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:57:14 24 4
gpt4 key购买 nike

假设我的 Ubuntu-Linux 的一个目录下有三个文件。其中一个在音乐播放器中打开,但另外两个未在任何应用程序中打开并且未使用任何进程。

我想删除这两个文件。换句话说,我想检测没有被任何进程使用的文件,然后删除它们。

我试过这个:

rm !(lsof | grep "thePath")

但是失败了。 lsof 这里有问题。

有什么办法吗?

最佳答案

你的语法错得离谱。在 shell 中,与许多其他编程语言不同,将命令(就像函数调用一样)放在括号中不会产生结果。

相反,你想要这样的东西:

for f in *; do
fuser -s "$f" || rm "$f"
done

我更喜欢 fuser 而不是 lsof,因为它允许您查询单个文件。

关于linux - 如何删除未打开的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32472013/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com