Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何查找文件名以波浪号结尾的所有文件_Linux - Fatal编程技术网

Linux 如何查找文件名以波浪号结尾的所有文件

Linux 如何查找文件名以波浪号结尾的所有文件,linux,Linux,我使用Emacs,它有时会备份已编辑的文件。几天后,我会有很多备份文件,其名称以波浪号结尾 有没有办法找到这些文件并立即删除 我试过这个: find "*" -type f -iname *~ 但它不起作用。我希望命令能够递归地工作–类似于ls-alR您需要从shell中转义。您需要指定搜索路径,而不是* find . -type f -name '*~' 要删除这些文件,请执行以下操作: find . -type f -name '*~' -exec rm -f '{}' \; 你可以这

我使用Emacs,它有时会备份已编辑的文件。几天后,我会有很多备份文件,其名称以波浪号结尾

有没有办法找到这些文件并立即删除

我试过这个:

find "*" -type f -iname *~

但它不起作用。我希望命令能够递归地工作–类似于
ls-alR

您需要从shell中转义。您需要指定搜索路径,而不是
*

find . -type f -name '*~'
要删除这些文件,请执行以下操作:

find . -type f -name '*~' -exec rm -f '{}' \;

你可以这样做:

find . -type f -name '*~' -delete
如果要同时删除#*#文件:

您可以使用“-print”:


另一种方法是使用grep

lnydex99uhc:javastuff user$ ls
Permutation.java VigenereCipher.java    VigenereCipher.java~

lnydex99uhc:javastuff user $ find . | grep .~$
./VigenereCipher.java~
您还可以按如下方式传递任何命令:

lnydex99uhc:javastuff zatef$ rm $(find . | grep .~$)

@没有勺子,然后将答案标记为所选答案:)我要等8分钟。我会记住的。:)如果您有信心
查找-类型f-名称'*~'-exec rm'{}'\将为您删除文件。确定。如何添加到
rm'{}\
-f
参数?我会亲自运行
查找-键入f-name'*~'>“$HOME”/tilde files.txt
(这会将tilde结束文件从命令的stdout保存到文件~/tilde files.txt),然后通过手动查看文件,再次检查是否删除了任何重要的内容!只有这样,您才能删除任何困扰您的行,然后在读取行的同时运行
;do sudo rm-右前“$line”;完成<~/tilde files.txt
以删除该文本文件中列出的文件,特别是考虑到这是一个递归删除。第二个示例需要括号:
find\(-type f-name'*~'-o-name'.*.'\)-delete
lnydex99uhc:javastuff user$ ls
Permutation.java VigenereCipher.java    VigenereCipher.java~

lnydex99uhc:javastuff user $ find . | grep .~$
./VigenereCipher.java~
lnydex99uhc:javastuff zatef$ rm $(find . | grep .~$)