我在这个存储库中进行了搜索,但没有找到任何类似的问题,或者可能是我的搜索不正确。
我在我的客户端环境中遇到了这个问题,一个自定义应用程序正在使用环境变量“$SRCDIR”和“$HOME”创建目录,而创建这些目录的目录本身就是 HOME 目录路径。如果我说 rm -rf $HOME
那么 $HOME 下的所有文件和子目录都将被删除,这是当前目录。如何删除这些不需要的目录。
-rw-r--r-- 1 grp domain users 418051450 Apr 18 18:09 $SRCDIR
-rw-r--r-- 1 grp domain users 418051450 Apr 18 18:09 $HOME
还有一些目录是垃圾字符,如下例所示。
-rwxr-xr-x 1 grp domain users 0 Feb 7 2106 ??????w?O???*????_6??t??Ó¡?>?tP??Ñ?|?C
如何删除它们?
最佳答案
对于垃圾名称,最简单的方法是构造一个只捕获它们的通配符。选择名称的可读部分(例如 _6
子字符串)并将其用星号括起来。首先尝试一下:
ls *_6*
如果它仅列出了垃圾名称,请继续将其删除:
rm *_6*
如果它还列出了其他名称,请尝试使通配符更具体,在名称中使用其他可读字符:
ls *w*_6*tP*N*x*
继续,直到找到一个只匹配不需要的文件的通配符。
关于linux - 如何在 UNIX 上删除带有特殊字符的目录名和带有环境变量名的目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11027566/