每当我在emacs上编辑文件时,似乎都会创建一个临时文件,其名称与〜相同.有没有人知道删除工作目录中所有这些文件的快捷方式?
Shr*_*saR 91
虽然这里的所有其他答案都正确地解释了如何删除文件,但您应该了解正在发生的事情.那些以〜结尾的文件是备份文件,由Emacs自动创建.它们有时很有用.如果您对这些文件感到恼火,并希望每次都删除它们,那么您也可以
(1).阻止创建备份文件:
(setq make-backup-files nil)
Run Code Online (Sandbox Code Playgroud)
要么
(2).它将备份文件保存在其他目录中,除非您去寻找它们,否则它们不会打扰您.我的.emacs中有以下内容:
(setq backup-directory-alist '(("." . "~/.emacs.d/backup"))
backup-by-copying t ; Don't delink hardlinks
version-control t ; Use version numbers on backups
delete-old-versions t ; Automatically delete excess backups
kept-new-versions 20 ; how many of the newest versions to keep
kept-old-versions 5 ; and how many of the old
)
Run Code Online (Sandbox Code Playgroud)
(只有第一行至关重要.)要查看文档backup-directory-alist
,请键入C-h v backup-directory-alist.
Bri*_*ach 30
find . -name '*~' -exec rm {} \;
Run Code Online (Sandbox Code Playgroud)
编辑:嗯...虽然这有效,我发布它认为rm *~
会导致shell插入~
用户的主目录.它至少与这台机器上的bash版本无关 - 当然是YMMV.
有些版本find
有一个-delete
选项:
find . -name '*~' -delete
Run Code Online (Sandbox Code Playgroud)
你可以
rm *\~
Run Code Online (Sandbox Code Playgroud)
更有用的是,您可以更改emacs备份目录,以便将所有这些文件存储在公共位置,方法是将其添加到.emacs:
'(backup-directory-alist (quote (("." . "/common/backup/path"))))
Run Code Online (Sandbox Code Playgroud)
从工作目录:
$ rm *~
Run Code Online (Sandbox Code Playgroud)
从各处:
$ cd; find . -name '*~' | xargs rm -f
Run Code Online (Sandbox Code Playgroud)
从emacs内部,使用dired
.
C-x C-f . RET ~ x y e s RET
Run Code Online (Sandbox Code Playgroud)
您可以通过在〜/ .emacs中添加以下行来永久禁止创建备份文件
(setq make-backup-files nil)
Run Code Online (Sandbox Code Playgroud)
我不推荐这最后一个,因为emacs的备份文件多年来已经多次保存了我.
归档时间: |
|
查看次数: |
30137 次 |
最近记录: |